From abd66f888438ead112891bc3d74d04d09b94446f Mon Sep 17 00:00:00 2001 From: yutianwu Date: Fri, 6 Mar 2020 11:34:06 +0800 Subject: [PATCH] [R4R] Add eddsa (#88) * [R4R] Add eddsa keygen and signing (#3) * add eddsa signing and keygen * contruct extended element from x,y * update dep * fix test * fix bug * delete unused code * add resharing * fix comments * refactor RejectionSampl;e * rename variable (#4) * delete printf * update dependency * resolve conflict --- common/hash_utils.go | 23 +- {ecdsa/signing => common}/signature.pb.go | 32 +-- crypto/schnorr/schnorr_proof.go | 8 +- ecdsa/keygen/local_party.go | 4 +- ecdsa/keygen/local_party_test.go | 2 +- ecdsa/keygen/messages.go | 8 +- ecdsa/keygen/round_1.go | 1 + ecdsa/keygen/rounds.go | 2 +- ecdsa/keygen/test_utils.go | 2 +- ecdsa/resharing/local_party.go | 4 +- ecdsa/resharing/local_party_test.go | 2 +- ecdsa/resharing/messages.go | 10 +- ecdsa/resharing/rounds.go | 2 +- ecdsa/signing/local_party.go | 12 +- ecdsa/signing/local_party_test.go | 3 +- ecdsa/signing/messages.go | 20 +- ecdsa/signing/round_1.go | 2 +- ecdsa/signing/rounds.go | 5 +- eddsa/keygen/eddsa-keygen.pb.go | 193 ++++++++++++++++ eddsa/keygen/local_party.go | 149 +++++++++++++ eddsa/keygen/local_party_test.go | 238 ++++++++++++++++++++ eddsa/keygen/messages.go | 133 +++++++++++ eddsa/keygen/round_1.go | 108 +++++++++ eddsa/keygen/round_2.go | 92 ++++++++ eddsa/keygen/round_3.go | 208 ++++++++++++++++++ eddsa/keygen/rounds.go | 84 +++++++ eddsa/keygen/save_data.go | 63 ++++++ eddsa/keygen/test_utils.go | 109 ++++++++++ eddsa/resharing/eddsa-resharing.pb.go | 254 ++++++++++++++++++++++ eddsa/resharing/local_party.go | 153 +++++++++++++ eddsa/resharing/local_party_test.go | 229 +++++++++++++++++++ eddsa/resharing/messages.go | 177 +++++++++++++++ eddsa/resharing/round_1_old_step_1.go | 117 ++++++++++ eddsa/resharing/round_2_new_step_1.go | 70 ++++++ eddsa/resharing/round_3_old_step_2.go | 87 ++++++++ eddsa/resharing/round_4_new_step_2.go | 154 +++++++++++++ eddsa/resharing/round_5_new_step_3.go | 50 +++++ eddsa/resharing/rounds.go | 135 ++++++++++++ eddsa/signing/eddsa-signing.pb.go | 193 ++++++++++++++++ eddsa/signing/finalize.go | 75 +++++++ eddsa/signing/local_party.go | 154 +++++++++++++ eddsa/signing/local_party_test.go | 143 ++++++++++++ eddsa/signing/messages.go | 138 ++++++++++++ eddsa/signing/prepare.go | 36 +++ eddsa/signing/round_1.go | 105 +++++++++ eddsa/signing/round_2.go | 71 ++++++ eddsa/signing/round_3.go | 125 +++++++++++ eddsa/signing/rounds.go | 99 +++++++++ eddsa/signing/utils.go | 128 +++++++++++ go.mod | 4 + go.sum | 9 +- protob/eddsa-keygen.proto | 33 +++ protob/eddsa-resharing.proto | 44 ++++ protob/eddsa-signing.proto | 33 +++ protob/signature.proto | 2 +- test/_ecdsa_fixtures/keygen_data_0.json | 1 + test/_ecdsa_fixtures/keygen_data_1.json | 1 + test/_ecdsa_fixtures/keygen_data_10.json | 1 + test/_ecdsa_fixtures/keygen_data_11.json | 1 + test/_ecdsa_fixtures/keygen_data_12.json | 1 + test/_ecdsa_fixtures/keygen_data_13.json | 1 + test/_ecdsa_fixtures/keygen_data_14.json | 1 + test/_ecdsa_fixtures/keygen_data_15.json | 1 + test/_ecdsa_fixtures/keygen_data_16.json | 1 + test/_ecdsa_fixtures/keygen_data_17.json | 1 + test/_ecdsa_fixtures/keygen_data_18.json | 1 + test/_ecdsa_fixtures/keygen_data_19.json | 1 + test/_ecdsa_fixtures/keygen_data_2.json | 1 + test/_ecdsa_fixtures/keygen_data_3.json | 1 + test/_ecdsa_fixtures/keygen_data_4.json | 1 + test/_ecdsa_fixtures/keygen_data_5.json | 1 + test/_ecdsa_fixtures/keygen_data_6.json | 1 + test/_ecdsa_fixtures/keygen_data_7.json | 1 + test/_ecdsa_fixtures/keygen_data_8.json | 1 + test/_ecdsa_fixtures/keygen_data_9.json | 1 + test/_eddsa_fixtures/keygen_data_0.json | 1 + test/_eddsa_fixtures/keygen_data_1.json | 1 + test/_eddsa_fixtures/keygen_data_10.json | 1 + test/_eddsa_fixtures/keygen_data_11.json | 1 + test/_eddsa_fixtures/keygen_data_12.json | 1 + test/_eddsa_fixtures/keygen_data_13.json | 1 + test/_eddsa_fixtures/keygen_data_14.json | 1 + test/_eddsa_fixtures/keygen_data_15.json | 1 + test/_eddsa_fixtures/keygen_data_16.json | 1 + test/_eddsa_fixtures/keygen_data_17.json | 1 + test/_eddsa_fixtures/keygen_data_18.json | 1 + test/_eddsa_fixtures/keygen_data_19.json | 1 + test/_eddsa_fixtures/keygen_data_2.json | 1 + test/_eddsa_fixtures/keygen_data_3.json | 1 + test/_eddsa_fixtures/keygen_data_4.json | 1 + test/_eddsa_fixtures/keygen_data_5.json | 1 + test/_eddsa_fixtures/keygen_data_6.json | 1 + test/_eddsa_fixtures/keygen_data_7.json | 1 + test/_eddsa_fixtures/keygen_data_8.json | 1 + test/_eddsa_fixtures/keygen_data_9.json | 1 + test/_fixtures/keygen_data_0.json | 1 - test/_fixtures/keygen_data_1.json | 1 - test/_fixtures/keygen_data_10.json | 1 - test/_fixtures/keygen_data_11.json | 1 - test/_fixtures/keygen_data_12.json | 1 - test/_fixtures/keygen_data_13.json | 1 - test/_fixtures/keygen_data_14.json | 1 - test/_fixtures/keygen_data_15.json | 1 - test/_fixtures/keygen_data_16.json | 1 - test/_fixtures/keygen_data_17.json | 1 - test/_fixtures/keygen_data_18.json | 1 - test/_fixtures/keygen_data_19.json | 1 - test/_fixtures/keygen_data_2.json | 1 - test/_fixtures/keygen_data_3.json | 1 - test/_fixtures/keygen_data_4.json | 1 - test/_fixtures/keygen_data_5.json | 1 - test/_fixtures/keygen_data_6.json | 1 - test/_fixtures/keygen_data_7.json | 1 - test/_fixtures/keygen_data_8.json | 1 - test/_fixtures/keygen_data_9.json | 1 - tss/wire.go | 3 +- 116 files changed, 4294 insertions(+), 106 deletions(-) rename {ecdsa/signing => common}/signature.pb.go (73%) create mode 100644 eddsa/keygen/eddsa-keygen.pb.go create mode 100644 eddsa/keygen/local_party.go create mode 100644 eddsa/keygen/local_party_test.go create mode 100644 eddsa/keygen/messages.go create mode 100644 eddsa/keygen/round_1.go create mode 100644 eddsa/keygen/round_2.go create mode 100644 eddsa/keygen/round_3.go create mode 100644 eddsa/keygen/rounds.go create mode 100644 eddsa/keygen/save_data.go create mode 100644 eddsa/keygen/test_utils.go create mode 100644 eddsa/resharing/eddsa-resharing.pb.go create mode 100644 eddsa/resharing/local_party.go create mode 100644 eddsa/resharing/local_party_test.go create mode 100644 eddsa/resharing/messages.go create mode 100644 eddsa/resharing/round_1_old_step_1.go create mode 100644 eddsa/resharing/round_2_new_step_1.go create mode 100644 eddsa/resharing/round_3_old_step_2.go create mode 100644 eddsa/resharing/round_4_new_step_2.go create mode 100644 eddsa/resharing/round_5_new_step_3.go create mode 100644 eddsa/resharing/rounds.go create mode 100644 eddsa/signing/eddsa-signing.pb.go create mode 100644 eddsa/signing/finalize.go create mode 100644 eddsa/signing/local_party.go create mode 100644 eddsa/signing/local_party_test.go create mode 100644 eddsa/signing/messages.go create mode 100644 eddsa/signing/prepare.go create mode 100644 eddsa/signing/round_1.go create mode 100644 eddsa/signing/round_2.go create mode 100644 eddsa/signing/round_3.go create mode 100644 eddsa/signing/rounds.go create mode 100644 eddsa/signing/utils.go create mode 100644 protob/eddsa-keygen.proto create mode 100644 protob/eddsa-resharing.proto create mode 100644 protob/eddsa-signing.proto create mode 100644 test/_ecdsa_fixtures/keygen_data_0.json create mode 100644 test/_ecdsa_fixtures/keygen_data_1.json create mode 100644 test/_ecdsa_fixtures/keygen_data_10.json create mode 100644 test/_ecdsa_fixtures/keygen_data_11.json create mode 100644 test/_ecdsa_fixtures/keygen_data_12.json create mode 100644 test/_ecdsa_fixtures/keygen_data_13.json create mode 100644 test/_ecdsa_fixtures/keygen_data_14.json create mode 100644 test/_ecdsa_fixtures/keygen_data_15.json create mode 100644 test/_ecdsa_fixtures/keygen_data_16.json create mode 100644 test/_ecdsa_fixtures/keygen_data_17.json create mode 100644 test/_ecdsa_fixtures/keygen_data_18.json create mode 100644 test/_ecdsa_fixtures/keygen_data_19.json create mode 100644 test/_ecdsa_fixtures/keygen_data_2.json create mode 100644 test/_ecdsa_fixtures/keygen_data_3.json create mode 100644 test/_ecdsa_fixtures/keygen_data_4.json create mode 100644 test/_ecdsa_fixtures/keygen_data_5.json create mode 100644 test/_ecdsa_fixtures/keygen_data_6.json create mode 100644 test/_ecdsa_fixtures/keygen_data_7.json create mode 100644 test/_ecdsa_fixtures/keygen_data_8.json create mode 100644 test/_ecdsa_fixtures/keygen_data_9.json create mode 100644 test/_eddsa_fixtures/keygen_data_0.json create mode 100644 test/_eddsa_fixtures/keygen_data_1.json create mode 100644 test/_eddsa_fixtures/keygen_data_10.json create mode 100644 test/_eddsa_fixtures/keygen_data_11.json create mode 100644 test/_eddsa_fixtures/keygen_data_12.json create mode 100644 test/_eddsa_fixtures/keygen_data_13.json create mode 100644 test/_eddsa_fixtures/keygen_data_14.json create mode 100644 test/_eddsa_fixtures/keygen_data_15.json create mode 100644 test/_eddsa_fixtures/keygen_data_16.json create mode 100644 test/_eddsa_fixtures/keygen_data_17.json create mode 100644 test/_eddsa_fixtures/keygen_data_18.json create mode 100644 test/_eddsa_fixtures/keygen_data_19.json create mode 100644 test/_eddsa_fixtures/keygen_data_2.json create mode 100644 test/_eddsa_fixtures/keygen_data_3.json create mode 100644 test/_eddsa_fixtures/keygen_data_4.json create mode 100644 test/_eddsa_fixtures/keygen_data_5.json create mode 100644 test/_eddsa_fixtures/keygen_data_6.json create mode 100644 test/_eddsa_fixtures/keygen_data_7.json create mode 100644 test/_eddsa_fixtures/keygen_data_8.json create mode 100644 test/_eddsa_fixtures/keygen_data_9.json delete mode 100644 test/_fixtures/keygen_data_0.json delete mode 100644 test/_fixtures/keygen_data_1.json delete mode 100644 test/_fixtures/keygen_data_10.json delete mode 100644 test/_fixtures/keygen_data_11.json delete mode 100644 test/_fixtures/keygen_data_12.json delete mode 100644 test/_fixtures/keygen_data_13.json delete mode 100644 test/_fixtures/keygen_data_14.json delete mode 100644 test/_fixtures/keygen_data_15.json delete mode 100644 test/_fixtures/keygen_data_16.json delete mode 100644 test/_fixtures/keygen_data_17.json delete mode 100644 test/_fixtures/keygen_data_18.json delete mode 100644 test/_fixtures/keygen_data_19.json delete mode 100644 test/_fixtures/keygen_data_2.json delete mode 100644 test/_fixtures/keygen_data_3.json delete mode 100644 test/_fixtures/keygen_data_4.json delete mode 100644 test/_fixtures/keygen_data_5.json delete mode 100644 test/_fixtures/keygen_data_6.json delete mode 100644 test/_fixtures/keygen_data_7.json delete mode 100644 test/_fixtures/keygen_data_8.json delete mode 100644 test/_fixtures/keygen_data_9.json diff --git a/common/hash_utils.go b/common/hash_utils.go index ce658463..4fd26196 100644 --- a/common/hash_utils.go +++ b/common/hash_utils.go @@ -11,27 +11,8 @@ import ( ) // RejectionSample implements the rejection sampling logic for converting a -// SHA512/256 hash to a value between 0-q from GG18Spec (6) Fig. 12. +// SHA512/256 hash to a value between 0-q func RejectionSample(q *big.Int, eHash *big.Int) *big.Int { // e' = eHash - qGTZero := zero.Cmp(q) == -1 - // e = the first |q| bits of e' - qBits := q.BitLen() - e := firstBitsOf(qBits, eHash) - // while e is not between 0-q - for !(qGTZero && e.Cmp(q) == -1) { - eHash := SHA512_256iOne(eHash) - e = firstBitsOf(qBits, eHash) - } - return e -} - -func firstBitsOf(bits int, v *big.Int) *big.Int { - e := big.NewInt(0) - for i := 0; i < bits; i++ { - bit := v.Bit(i) - if 0 < bit { - e.SetBit(e, i, bit) - } - } + e := eHash.Mod(eHash, q) return e } diff --git a/ecdsa/signing/signature.pb.go b/common/signature.pb.go similarity index 73% rename from ecdsa/signing/signature.pb.go rename to common/signature.pb.go index 0929d215..6568035c 100644 --- a/ecdsa/signing/signature.pb.go +++ b/common/signature.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. -// source: protob/signature.proto +// source: signature.proto -package signing +package common import ( fmt "fmt" @@ -40,7 +40,7 @@ func (m *SignatureData) Reset() { *m = SignatureData{} } func (m *SignatureData) String() string { return proto.CompactTextString(m) } func (*SignatureData) ProtoMessage() {} func (*SignatureData) Descriptor() ([]byte, []int) { - return fileDescriptor_a73ad5e44f61b3fb, []int{0} + return fileDescriptor_76962cacebaec211, []int{0} } func (m *SignatureData) XXX_Unmarshal(b []byte) error { @@ -100,17 +100,17 @@ func init() { proto.RegisterType((*SignatureData)(nil), "SignatureData") } -func init() { proto.RegisterFile("protob/signature.proto", fileDescriptor_a73ad5e44f61b3fb) } - -var fileDescriptor_a73ad5e44f61b3fb = []byte{ - // 142 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x12, 0x2b, 0x28, 0xca, 0x2f, - 0xc9, 0x4f, 0xd2, 0x2f, 0xce, 0x4c, 0xcf, 0x4b, 0x2c, 0x29, 0x2d, 0x4a, 0xd5, 0x03, 0x0b, 0x28, - 0xb5, 0x31, 0x72, 0xf1, 0x06, 0xc3, 0xc4, 0x5c, 0x12, 0x4b, 0x12, 0x85, 0x64, 0xb8, 0x38, 0xe1, - 0x8a, 0x24, 0x18, 0x15, 0x18, 0x35, 0x78, 0x82, 0x10, 0x02, 0x42, 0xba, 0x5c, 0x42, 0x70, 0x4e, - 0x7c, 0x51, 0x6a, 0x72, 0x7e, 0x59, 0x6a, 0x51, 0xa5, 0x04, 0x13, 0x58, 0x99, 0x20, 0x5c, 0x26, - 0x08, 0x2a, 0x21, 0xc4, 0xc3, 0xc5, 0x58, 0x24, 0xc1, 0x0c, 0x96, 0x65, 0x2c, 0x02, 0xf1, 0x8a, - 0x25, 0x58, 0x20, 0xbc, 0x62, 0x10, 0x2f, 0x57, 0x82, 0x15, 0xc2, 0xcb, 0x75, 0xe2, 0x8f, 0xe2, - 0x4d, 0x4d, 0x4e, 0x29, 0x4e, 0x04, 0xbb, 0x30, 0x33, 0x2f, 0x3d, 0x89, 0x0d, 0xec, 0x40, 0x63, - 0x40, 0x00, 0x00, 0x00, 0xff, 0xff, 0x90, 0x21, 0xad, 0x4a, 0xba, 0x00, 0x00, 0x00, +func init() { proto.RegisterFile("signature.proto", fileDescriptor_76962cacebaec211) } + +var fileDescriptor_76962cacebaec211 = []byte{ + // 133 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0xe2, 0x2f, 0xce, 0x4c, 0xcf, + 0x4b, 0x2c, 0x29, 0x2d, 0x4a, 0xd5, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x57, 0x6a, 0x63, 0xe4, 0xe2, + 0x0d, 0x86, 0x89, 0xb9, 0x24, 0x96, 0x24, 0x0a, 0xc9, 0x70, 0x71, 0xc2, 0x15, 0x49, 0x30, 0x2a, + 0x30, 0x6a, 0xf0, 0x04, 0x21, 0x04, 0x84, 0x74, 0xb9, 0x84, 0xe0, 0x9c, 0xf8, 0xa2, 0xd4, 0xe4, + 0xfc, 0xb2, 0xd4, 0xa2, 0x4a, 0x09, 0x26, 0xb0, 0x32, 0x41, 0xb8, 0x4c, 0x10, 0x54, 0x42, 0x88, + 0x87, 0x8b, 0xb1, 0x48, 0x82, 0x19, 0x2c, 0xcb, 0x58, 0x04, 0xe2, 0x15, 0x4b, 0xb0, 0x40, 0x78, + 0xc5, 0x20, 0x5e, 0xae, 0x04, 0x2b, 0x84, 0x97, 0xeb, 0xc4, 0x11, 0xc5, 0x96, 0x9c, 0x9f, 0x9b, + 0x9b, 0x9f, 0x97, 0xc4, 0x06, 0x76, 0x99, 0x31, 0x20, 0x00, 0x00, 0xff, 0xff, 0x02, 0x54, 0x54, + 0x57, 0xac, 0x00, 0x00, 0x00, } diff --git a/crypto/schnorr/schnorr_proof.go b/crypto/schnorr/schnorr_proof.go index d0634f0d..129509ab 100644 --- a/crypto/schnorr/schnorr_proof.go +++ b/crypto/schnorr/schnorr_proof.go @@ -40,7 +40,7 @@ func NewZKProof(x *big.Int, X *crypto.ECPoint) (*ZKProof, error) { alpha := crypto.ScalarBaseMult(tss.EC(), a) var c *big.Int - { // must use RejectionSample + { cHash := common.SHA512_256i(X.X(), X.Y(), g.X(), g.Y(), alpha.X(), alpha.Y()) c = common.RejectionSample(q, cHash) } @@ -60,7 +60,7 @@ func (pf *ZKProof) Verify(X *crypto.ECPoint) bool { g := crypto.NewECPointNoCurveCheck(tss.EC(), ecParams.Gx, ecParams.Gy) var c *big.Int - { // must use RejectionSample + { cHash := common.SHA512_256i(X.X(), X.Y(), g.X(), g.Y(), pf.Alpha.X(), pf.Alpha.Y()) c = common.RejectionSample(q, cHash) } @@ -95,7 +95,7 @@ func NewZKVProof(V, R *crypto.ECPoint, s, l *big.Int) (*ZKVProof, error) { alpha, _ := aR.Add(bG) // already on the curve. var c *big.Int - { // must use RejectionSample + { cHash := common.SHA512_256i(V.X(), V.Y(), R.X(), R.Y(), g.X(), g.Y(), alpha.X(), alpha.Y()) c = common.RejectionSample(q, cHash) } @@ -115,7 +115,7 @@ func (pf *ZKVProof) Verify(V, R *crypto.ECPoint) bool { g := crypto.NewECPointNoCurveCheck(tss.EC(), ecParams.Gx, ecParams.Gy) var c *big.Int - { // must use RejectionSample + { cHash := common.SHA512_256i(V.X(), V.Y(), R.X(), R.Y(), g.X(), g.Y(), pf.Alpha.X(), pf.Alpha.Y()) c = common.RejectionSample(q, cHash) } diff --git a/ecdsa/keygen/local_party.go b/ecdsa/keygen/local_party.go index 3ce52028..96602fca 100644 --- a/ecdsa/keygen/local_party.go +++ b/ecdsa/keygen/local_party.go @@ -96,11 +96,11 @@ func (p *LocalParty) FirstRound() tss.Round { } func (p *LocalParty) Start() *tss.Error { - return tss.BaseStart(p, "keygen") + return tss.BaseStart(p, TaskName) } func (p *LocalParty) Update(msg tss.ParsedMessage) (ok bool, err *tss.Error) { - return tss.BaseUpdate(p, msg, "keygen") + return tss.BaseUpdate(p, msg, TaskName) } func (p *LocalParty) UpdateFromBytes(wireBytes []byte, from *tss.PartyID, isBroadcast bool) (bool, *tss.Error) { diff --git a/ecdsa/keygen/local_party_test.go b/ecdsa/keygen/local_party_test.go index d3c27470..517ae451 100644 --- a/ecdsa/keygen/local_party_test.go +++ b/ecdsa/keygen/local_party_test.go @@ -162,7 +162,7 @@ func TestBadMessageCulprits(t *testing.T) { assert.Equal(t, 1, len(err2.Culprits())) assert.Equal(t, pIDs[1], err2.Culprits()[0]) assert.Equal(t, - "task keygen, party {0,P[1]}, round 1, culprits [{1,2}]: message failed ValidateBasic: Type: binance.tss-lib.ecdsa.keygen.KGRound1Message, From: {1,2}, To: all", + "task ecdsa-keygen, party {0,P[1]}, round 1, culprits [{1,2}]: message failed ValidateBasic: Type: binance.tss-lib.ecdsa.keygen.KGRound1Message, From: {1,2}, To: all", err2.Error()) } diff --git a/ecdsa/keygen/messages.go b/ecdsa/keygen/messages.go index 6dc6d32c..17296ca1 100644 --- a/ecdsa/keygen/messages.go +++ b/ecdsa/keygen/messages.go @@ -33,10 +33,10 @@ var ( ) func init() { - proto.RegisterType((*KGRound1Message)(nil), tss.ProtoNamePrefix+"keygen.KGRound1Message") - proto.RegisterType((*KGRound2Message1)(nil), tss.ProtoNamePrefix+"keygen.KGRound2Message1") - proto.RegisterType((*KGRound2Message2)(nil), tss.ProtoNamePrefix+"keygen.KGRound2Message2") - proto.RegisterType((*KGRound3Message)(nil), tss.ProtoNamePrefix+"keygen.KGRound3Message") + proto.RegisterType((*KGRound1Message)(nil), tss.ECDSAProtoNamePrefix+"keygen.KGRound1Message") + proto.RegisterType((*KGRound2Message1)(nil), tss.ECDSAProtoNamePrefix+"keygen.KGRound2Message1") + proto.RegisterType((*KGRound2Message2)(nil), tss.ECDSAProtoNamePrefix+"keygen.KGRound2Message2") + proto.RegisterType((*KGRound3Message)(nil), tss.ECDSAProtoNamePrefix+"keygen.KGRound3Message") } // ----- // diff --git a/ecdsa/keygen/round_1.go b/ecdsa/keygen/round_1.go index cbcc84ca..16d596f1 100644 --- a/ecdsa/keygen/round_1.go +++ b/ecdsa/keygen/round_1.go @@ -41,6 +41,7 @@ func (round *round1) Start() *tss.Error { // 1. calculate "partial" key share ui ui := common.GetRandomPositiveInt(tss.EC().Params().N) + round.temp.ui = ui // 2. compute the vss shares diff --git a/ecdsa/keygen/rounds.go b/ecdsa/keygen/rounds.go index 7a467772..bd06a936 100644 --- a/ecdsa/keygen/rounds.go +++ b/ecdsa/keygen/rounds.go @@ -11,7 +11,7 @@ import ( ) const ( - TaskName = "keygen" + TaskName = "ecdsa-keygen" ) type ( diff --git a/ecdsa/keygen/test_utils.go b/ecdsa/keygen/test_utils.go index d187ec52..c90b4472 100644 --- a/ecdsa/keygen/test_utils.go +++ b/ecdsa/keygen/test_utils.go @@ -29,7 +29,7 @@ const ( TestThreshold = test.TestParticipants / 2 ) const ( - testFixtureDirFormat = "%s/../../test/_fixtures" + testFixtureDirFormat = "%s/../../test/_ecdsa_fixtures" testFixtureFileFormat = "keygen_data_%d.json" ) diff --git a/ecdsa/resharing/local_party.go b/ecdsa/resharing/local_party.go index 9455fe85..fa5f6a36 100644 --- a/ecdsa/resharing/local_party.go +++ b/ecdsa/resharing/local_party.go @@ -102,11 +102,11 @@ func (p *LocalParty) FirstRound() tss.Round { } func (p *LocalParty) Start() *tss.Error { - return tss.BaseStart(p, "resharing") + return tss.BaseStart(p, TaskName) } func (p *LocalParty) Update(msg tss.ParsedMessage) (ok bool, err *tss.Error) { - return tss.BaseUpdate(p, msg, "resharing") + return tss.BaseUpdate(p, msg, TaskName) } func (p *LocalParty) UpdateFromBytes(wireBytes []byte, from *tss.PartyID, isBroadcast bool) (bool, *tss.Error) { diff --git a/ecdsa/resharing/local_party_test.go b/ecdsa/resharing/local_party_test.go index 4488925f..d7cc82c9 100644 --- a/ecdsa/resharing/local_party_test.go +++ b/ecdsa/resharing/local_party_test.go @@ -168,7 +168,7 @@ signing: signErrCh := make(chan *tss.Error, len(signPIDs)) signOutCh := make(chan tss.Message, len(signPIDs)) - signEndCh := make(chan signing.SignatureData, len(signPIDs)) + signEndCh := make(chan common.SignatureData, len(signPIDs)) for j, signPID := range signPIDs { params := tss.NewParameters(signP2pCtx, signPID, len(signPIDs), newThreshold) diff --git a/ecdsa/resharing/messages.go b/ecdsa/resharing/messages.go index f933c74d..a04ca154 100644 --- a/ecdsa/resharing/messages.go +++ b/ecdsa/resharing/messages.go @@ -34,11 +34,11 @@ var ( ) func init() { - proto.RegisterType((*DGRound1Message)(nil), tss.ProtoNamePrefix+"resharing.DGRound1Message") - proto.RegisterType((*DGRound2Message1)(nil), tss.ProtoNamePrefix+"resharing.DGRound2Message1") - proto.RegisterType((*DGRound2Message2)(nil), tss.ProtoNamePrefix+"resharing.DGRound2Message2") - proto.RegisterType((*DGRound3Message1)(nil), tss.ProtoNamePrefix+"resharing.DGRound3Message1") - proto.RegisterType((*DGRound3Message2)(nil), tss.ProtoNamePrefix+"resharing.DGRound3Message2") + proto.RegisterType((*DGRound1Message)(nil), tss.ECDSAProtoNamePrefix+"resharing.DGRound1Message") + proto.RegisterType((*DGRound2Message1)(nil), tss.ECDSAProtoNamePrefix+"resharing.DGRound2Message1") + proto.RegisterType((*DGRound2Message2)(nil), tss.ECDSAProtoNamePrefix+"resharing.DGRound2Message2") + proto.RegisterType((*DGRound3Message1)(nil), tss.ECDSAProtoNamePrefix+"resharing.DGRound3Message1") + proto.RegisterType((*DGRound3Message2)(nil), tss.ECDSAProtoNamePrefix+"resharing.DGRound3Message2") } // ----- // diff --git a/ecdsa/resharing/rounds.go b/ecdsa/resharing/rounds.go index c7a5206f..d23b50bd 100644 --- a/ecdsa/resharing/rounds.go +++ b/ecdsa/resharing/rounds.go @@ -12,7 +12,7 @@ import ( ) const ( - TaskName = "resharing" + TaskName = "ecdsa-resharing" ) type ( diff --git a/ecdsa/signing/local_party.go b/ecdsa/signing/local_party.go index ce7611d2..20416f5f 100644 --- a/ecdsa/signing/local_party.go +++ b/ecdsa/signing/local_party.go @@ -31,11 +31,11 @@ type ( keys keygen.LocalPartySaveData temp localTempData - data SignatureData + data common.SignatureData // outbound messaging out chan<- tss.Message - end chan<- SignatureData + end chan<- common.SignatureData } localMessageStore struct { @@ -98,7 +98,7 @@ func NewLocalParty( params *tss.Parameters, key keygen.LocalPartySaveData, out chan<- tss.Message, - end chan<- SignatureData, + end chan<- common.SignatureData, ) tss.Party { partyCount := len(params.Parties().IDs()) p := &LocalParty{ @@ -106,7 +106,7 @@ func NewLocalParty( params: params, keys: keygen.BuildLocalSaveDataSubset(key, params.Parties().IDs()), temp: localTempData{}, - data: SignatureData{}, + data: common.SignatureData{}, out: out, end: end, } @@ -139,7 +139,7 @@ func (p *LocalParty) FirstRound() tss.Round { } func (p *LocalParty) Start() *tss.Error { - return tss.BaseStart(p, "signing", func(round tss.Round) *tss.Error { + return tss.BaseStart(p, TaskName, func(round tss.Round) *tss.Error { round1, ok := round.(*round1) if !ok { return round.WrapError(errors.New("unable to Start(). party is in an unexpected round")) @@ -152,7 +152,7 @@ func (p *LocalParty) Start() *tss.Error { } func (p *LocalParty) Update(msg tss.ParsedMessage) (ok bool, err *tss.Error) { - return tss.BaseUpdate(p, msg, "signing") + return tss.BaseUpdate(p, msg, TaskName) } func (p *LocalParty) UpdateFromBytes(wireBytes []byte, from *tss.PartyID, isBroadcast bool) (bool, *tss.Error) { diff --git a/ecdsa/signing/local_party_test.go b/ecdsa/signing/local_party_test.go index 30ff95c9..a658dd21 100644 --- a/ecdsa/signing/local_party_test.go +++ b/ecdsa/signing/local_party_test.go @@ -51,13 +51,14 @@ func TestE2EConcurrent(t *testing.T) { errCh := make(chan *tss.Error, len(signPIDs)) outCh := make(chan tss.Message, len(signPIDs)) - endCh := make(chan SignatureData, len(signPIDs)) + endCh := make(chan common.SignatureData, len(signPIDs)) updater := test.SharedPartyUpdater // init the parties for i := 0; i < len(signPIDs); i++ { params := tss.NewParameters(p2pCtx, signPIDs[i], len(signPIDs), threshold) + P := NewLocalParty(big.NewInt(42), params, keys[i], outCh, endCh).(*LocalParty) parties = append(parties, P) go func(P *LocalParty) { diff --git a/ecdsa/signing/messages.go b/ecdsa/signing/messages.go index aab7f591..3cbfa39d 100644 --- a/ecdsa/signing/messages.go +++ b/ecdsa/signing/messages.go @@ -39,16 +39,16 @@ var ( ) func init() { - proto.RegisterType((*SignRound1Message1)(nil), tss.ProtoNamePrefix+"signing.SignRound1Message1") - proto.RegisterType((*SignRound1Message2)(nil), tss.ProtoNamePrefix+"signing.SignRound1Message2") - proto.RegisterType((*SignRound2Message)(nil), tss.ProtoNamePrefix+"signing.SignRound2Message") - proto.RegisterType((*SignRound3Message)(nil), tss.ProtoNamePrefix+"signing.SignRound3Message") - proto.RegisterType((*SignRound4Message)(nil), tss.ProtoNamePrefix+"signing.SignRound4Message") - proto.RegisterType((*SignRound5Message)(nil), tss.ProtoNamePrefix+"signing.SignRound5Message") - proto.RegisterType((*SignRound6Message)(nil), tss.ProtoNamePrefix+"signing.SignRound6Message") - proto.RegisterType((*SignRound7Message)(nil), tss.ProtoNamePrefix+"signing.SignRound7Message") - proto.RegisterType((*SignRound8Message)(nil), tss.ProtoNamePrefix+"signing.SignRound8Message") - proto.RegisterType((*SignRound9Message)(nil), tss.ProtoNamePrefix+"signing.SignRound9Message") + proto.RegisterType((*SignRound1Message1)(nil), tss.ECDSAProtoNamePrefix+"signing.SignRound1Message1") + proto.RegisterType((*SignRound1Message2)(nil), tss.ECDSAProtoNamePrefix+"signing.SignRound1Message2") + proto.RegisterType((*SignRound2Message)(nil), tss.ECDSAProtoNamePrefix+"signing.SignRound2Message") + proto.RegisterType((*SignRound3Message)(nil), tss.ECDSAProtoNamePrefix+"signing.SignRound3Message") + proto.RegisterType((*SignRound4Message)(nil), tss.ECDSAProtoNamePrefix+"signing.SignRound4Message") + proto.RegisterType((*SignRound5Message)(nil), tss.ECDSAProtoNamePrefix+"signing.SignRound5Message") + proto.RegisterType((*SignRound6Message)(nil), tss.ECDSAProtoNamePrefix+"signing.SignRound6Message") + proto.RegisterType((*SignRound7Message)(nil), tss.ECDSAProtoNamePrefix+"signing.SignRound7Message") + proto.RegisterType((*SignRound8Message)(nil), tss.ECDSAProtoNamePrefix+"signing.SignRound8Message") + proto.RegisterType((*SignRound9Message)(nil), tss.ECDSAProtoNamePrefix+"signing.SignRound9Message") } // ----- // diff --git a/ecdsa/signing/round_1.go b/ecdsa/signing/round_1.go index b33259f0..a767cf1c 100644 --- a/ecdsa/signing/round_1.go +++ b/ecdsa/signing/round_1.go @@ -24,7 +24,7 @@ var ( ) // round 1 represents round 1 of the signing part of the GG18 ECDSA TSS spec (Gennaro, Goldfeder; 2018) -func newRound1(params *tss.Parameters, key *keygen.LocalPartySaveData, data *SignatureData, temp *localTempData, out chan<- tss.Message, end chan<- SignatureData) tss.Round { +func newRound1(params *tss.Parameters, key *keygen.LocalPartySaveData, data *common.SignatureData, temp *localTempData, out chan<- tss.Message, end chan<- common.SignatureData) tss.Round { return &round1{ &base{params, key, data, temp, out, end, make([]bool, len(params.Parties().IDs())), false, 1}} } diff --git a/ecdsa/signing/rounds.go b/ecdsa/signing/rounds.go index 9a1ef13e..c3ced0d3 100644 --- a/ecdsa/signing/rounds.go +++ b/ecdsa/signing/rounds.go @@ -7,6 +7,7 @@ package signing import ( + "github.com/binance-chain/tss-lib/common" "github.com/binance-chain/tss-lib/ecdsa/keygen" "github.com/binance-chain/tss-lib/tss" ) @@ -19,10 +20,10 @@ type ( base struct { *tss.Parameters key *keygen.LocalPartySaveData - data *SignatureData + data *common.SignatureData temp *localTempData out chan<- tss.Message - end chan<- SignatureData + end chan<- common.SignatureData ok []bool // `ok` tracks parties which have been verified by Update() started bool number int diff --git a/eddsa/keygen/eddsa-keygen.pb.go b/eddsa/keygen/eddsa-keygen.pb.go new file mode 100644 index 00000000..7fd26e62 --- /dev/null +++ b/eddsa/keygen/eddsa-keygen.pb.go @@ -0,0 +1,193 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// source: eddsa-keygen.proto + +package keygen + +import ( + fmt "fmt" + proto "github.com/golang/protobuf/proto" + math "math" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package + +// +// Represents a BROADCAST message sent during Round 1 of the EDDSA TSS keygen protocol. +type KGRound1Message struct { + Commitment []byte `protobuf:"bytes,1,opt,name=commitment,proto3" json:"commitment,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *KGRound1Message) Reset() { *m = KGRound1Message{} } +func (m *KGRound1Message) String() string { return proto.CompactTextString(m) } +func (*KGRound1Message) ProtoMessage() {} +func (*KGRound1Message) Descriptor() ([]byte, []int) { + return fileDescriptor_87f3b4615ca57212, []int{0} +} + +func (m *KGRound1Message) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_KGRound1Message.Unmarshal(m, b) +} +func (m *KGRound1Message) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_KGRound1Message.Marshal(b, m, deterministic) +} +func (m *KGRound1Message) XXX_Merge(src proto.Message) { + xxx_messageInfo_KGRound1Message.Merge(m, src) +} +func (m *KGRound1Message) XXX_Size() int { + return xxx_messageInfo_KGRound1Message.Size(m) +} +func (m *KGRound1Message) XXX_DiscardUnknown() { + xxx_messageInfo_KGRound1Message.DiscardUnknown(m) +} + +var xxx_messageInfo_KGRound1Message proto.InternalMessageInfo + +func (m *KGRound1Message) GetCommitment() []byte { + if m != nil { + return m.Commitment + } + return nil +} + +// +// Represents a P2P message sent to each party during Round 2 of the EDDSA TSS keygen protocol. +type KGRound2Message1 struct { + Share []byte `protobuf:"bytes,1,opt,name=share,proto3" json:"share,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *KGRound2Message1) Reset() { *m = KGRound2Message1{} } +func (m *KGRound2Message1) String() string { return proto.CompactTextString(m) } +func (*KGRound2Message1) ProtoMessage() {} +func (*KGRound2Message1) Descriptor() ([]byte, []int) { + return fileDescriptor_87f3b4615ca57212, []int{1} +} + +func (m *KGRound2Message1) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_KGRound2Message1.Unmarshal(m, b) +} +func (m *KGRound2Message1) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_KGRound2Message1.Marshal(b, m, deterministic) +} +func (m *KGRound2Message1) XXX_Merge(src proto.Message) { + xxx_messageInfo_KGRound2Message1.Merge(m, src) +} +func (m *KGRound2Message1) XXX_Size() int { + return xxx_messageInfo_KGRound2Message1.Size(m) +} +func (m *KGRound2Message1) XXX_DiscardUnknown() { + xxx_messageInfo_KGRound2Message1.DiscardUnknown(m) +} + +var xxx_messageInfo_KGRound2Message1 proto.InternalMessageInfo + +func (m *KGRound2Message1) GetShare() []byte { + if m != nil { + return m.Share + } + return nil +} + +// +// Represents a BROADCAST message sent to each party during Round 2 of the EDDSA TSS keygen protocol. +type KGRound2Message2 struct { + DeCommitment [][]byte `protobuf:"bytes,1,rep,name=de_commitment,json=deCommitment,proto3" json:"de_commitment,omitempty"` + ProofAlphaX []byte `protobuf:"bytes,2,opt,name=proof_alpha_x,json=proofAlphaX,proto3" json:"proof_alpha_x,omitempty"` + ProofAlphaY []byte `protobuf:"bytes,3,opt,name=proof_alpha_y,json=proofAlphaY,proto3" json:"proof_alpha_y,omitempty"` + ProofT []byte `protobuf:"bytes,4,opt,name=proof_t,json=proofT,proto3" json:"proof_t,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *KGRound2Message2) Reset() { *m = KGRound2Message2{} } +func (m *KGRound2Message2) String() string { return proto.CompactTextString(m) } +func (*KGRound2Message2) ProtoMessage() {} +func (*KGRound2Message2) Descriptor() ([]byte, []int) { + return fileDescriptor_87f3b4615ca57212, []int{2} +} + +func (m *KGRound2Message2) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_KGRound2Message2.Unmarshal(m, b) +} +func (m *KGRound2Message2) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_KGRound2Message2.Marshal(b, m, deterministic) +} +func (m *KGRound2Message2) XXX_Merge(src proto.Message) { + xxx_messageInfo_KGRound2Message2.Merge(m, src) +} +func (m *KGRound2Message2) XXX_Size() int { + return xxx_messageInfo_KGRound2Message2.Size(m) +} +func (m *KGRound2Message2) XXX_DiscardUnknown() { + xxx_messageInfo_KGRound2Message2.DiscardUnknown(m) +} + +var xxx_messageInfo_KGRound2Message2 proto.InternalMessageInfo + +func (m *KGRound2Message2) GetDeCommitment() [][]byte { + if m != nil { + return m.DeCommitment + } + return nil +} + +func (m *KGRound2Message2) GetProofAlphaX() []byte { + if m != nil { + return m.ProofAlphaX + } + return nil +} + +func (m *KGRound2Message2) GetProofAlphaY() []byte { + if m != nil { + return m.ProofAlphaY + } + return nil +} + +func (m *KGRound2Message2) GetProofT() []byte { + if m != nil { + return m.ProofT + } + return nil +} + +func init() { + proto.RegisterType((*KGRound1Message)(nil), "KGRound1Message") + proto.RegisterType((*KGRound2Message1)(nil), "KGRound2Message1") + proto.RegisterType((*KGRound2Message2)(nil), "KGRound2Message2") +} + +func init() { proto.RegisterFile("eddsa-keygen.proto", fileDescriptor_87f3b4615ca57212) } + +var fileDescriptor_87f3b4615ca57212 = []byte{ + // 200 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x12, 0x4a, 0x4d, 0x49, 0x29, + 0x4e, 0xd4, 0xcd, 0x4e, 0xad, 0x4c, 0x4f, 0xcd, 0xd3, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x57, 0x32, + 0xe4, 0xe2, 0xf7, 0x76, 0x0f, 0xca, 0x2f, 0xcd, 0x4b, 0x31, 0xf4, 0x4d, 0x2d, 0x2e, 0x4e, 0x4c, + 0x4f, 0x15, 0x92, 0xe3, 0xe2, 0x4a, 0xce, 0xcf, 0xcd, 0xcd, 0x2c, 0xc9, 0x4d, 0xcd, 0x2b, 0x91, + 0x60, 0x54, 0x60, 0xd4, 0xe0, 0x09, 0x42, 0x12, 0x51, 0xd2, 0xe0, 0x12, 0x80, 0x6a, 0x31, 0x82, + 0x6a, 0x31, 0x14, 0x12, 0xe1, 0x62, 0x2d, 0xce, 0x48, 0x2c, 0x4a, 0x85, 0x2a, 0x87, 0x70, 0x94, + 0x66, 0x30, 0x62, 0x28, 0x35, 0x12, 0x52, 0xe6, 0xe2, 0x4d, 0x49, 0x8d, 0x47, 0xb1, 0x81, 0x59, + 0x83, 0x27, 0x88, 0x27, 0x25, 0xd5, 0x19, 0x2e, 0x26, 0xa4, 0xc4, 0xc5, 0x5b, 0x50, 0x94, 0x9f, + 0x9f, 0x16, 0x9f, 0x98, 0x53, 0x90, 0x91, 0x18, 0x5f, 0x21, 0xc1, 0x04, 0x36, 0x97, 0x1b, 0x2c, + 0xe8, 0x08, 0x12, 0x8b, 0x40, 0x57, 0x53, 0x29, 0xc1, 0x8c, 0xae, 0x26, 0x52, 0x48, 0x9c, 0x8b, + 0x1d, 0xa2, 0xa6, 0x44, 0x82, 0x05, 0x2c, 0xcb, 0x06, 0xe6, 0x86, 0x38, 0xf1, 0x45, 0xf1, 0x80, + 0x43, 0x43, 0x1f, 0x12, 0x1a, 0x49, 0x6c, 0xe0, 0xe0, 0x30, 0x06, 0x04, 0x00, 0x00, 0xff, 0xff, + 0x61, 0x46, 0xe6, 0x18, 0x24, 0x01, 0x00, 0x00, +} diff --git a/eddsa/keygen/local_party.go b/eddsa/keygen/local_party.go new file mode 100644 index 00000000..b3339a09 --- /dev/null +++ b/eddsa/keygen/local_party.go @@ -0,0 +1,149 @@ +// Copyright © 2019 Binance +// +// This file is part of Binance. The full Binance copyright notice, including +// terms governing use, modification, and redistribution, is contained in the +// file LICENSE at the root of the source code distribution tree. + +package keygen + +import ( + "errors" + "fmt" + "math/big" + + "github.com/binance-chain/tss-lib/common" + cmt "github.com/binance-chain/tss-lib/crypto/commitments" + "github.com/binance-chain/tss-lib/crypto/vss" + "github.com/binance-chain/tss-lib/tss" +) + +// Implements Party +// Implements Stringer +var _ tss.Party = (*LocalParty)(nil) +var _ fmt.Stringer = (*LocalParty)(nil) + +type ( + LocalParty struct { + *tss.BaseParty + params *tss.Parameters + + temp localTempData + data LocalPartySaveData + + // outbound messaging + out chan<- tss.Message + end chan<- LocalPartySaveData + } + + localMessageStore struct { + kgRound1Messages, + kgRound2Message1s, + kgRound2Message2s, + kgRound3Messages []tss.ParsedMessage + } + + localTempData struct { + localMessageStore + + // temp data (thrown away after keygen) + ui *big.Int // used for tests + KGCs []cmt.HashCommitment + vs vss.Vs + shares vss.Shares + deCommitPolyG cmt.HashDeCommitment + } +) + +// Exported, used in `tss` client +func NewLocalParty( + params *tss.Parameters, + out chan<- tss.Message, + end chan<- LocalPartySaveData, +) tss.Party { + partyCount := params.PartyCount() + data := NewLocalPartySaveData(partyCount) + p := &LocalParty{ + BaseParty: new(tss.BaseParty), + params: params, + temp: localTempData{}, + data: data, + out: out, + end: end, + } + // msgs init + p.temp.kgRound1Messages = make([]tss.ParsedMessage, partyCount) + p.temp.kgRound2Message1s = make([]tss.ParsedMessage, partyCount) + p.temp.kgRound2Message2s = make([]tss.ParsedMessage, partyCount) + p.temp.kgRound3Messages = make([]tss.ParsedMessage, partyCount) + // temp data init + p.temp.KGCs = make([]cmt.HashCommitment, partyCount) + return p +} + +func (p *LocalParty) FirstRound() tss.Round { + return newRound1(p.params, &p.data, &p.temp, p.out, p.end) +} + +func (p *LocalParty) Start() *tss.Error { + return tss.BaseStart(p, TaskName) +} + +func (p *LocalParty) Update(msg tss.ParsedMessage) (ok bool, err *tss.Error) { + return tss.BaseUpdate(p, msg, TaskName) +} + +func (p *LocalParty) UpdateFromBytes(wireBytes []byte, from *tss.PartyID, isBroadcast bool) (bool, *tss.Error) { + msg, err := tss.ParseWireMessage(wireBytes, from, isBroadcast) + if err != nil { + return false, p.WrapError(err) + } + return p.Update(msg) +} + +func (p *LocalParty) StoreMessage(msg tss.ParsedMessage) (bool, *tss.Error) { + // ValidateBasic is cheap; double-check the message here in case the public StoreMessage was called externally + if ok, err := p.ValidateMessage(msg); !ok || err != nil { + return ok, err + } + fromPIdx := msg.GetFrom().Index + + // switch/case is necessary to store any messages beyond current round + // this does not handle message replays. we expect the caller to apply replay and spoofing protection. + switch msg.Content().(type) { + case *KGRound1Message: + p.temp.kgRound1Messages[fromPIdx] = msg + case *KGRound2Message1: + p.temp.kgRound2Message1s[fromPIdx] = msg + case *KGRound2Message2: + p.temp.kgRound2Message2s[fromPIdx] = msg + default: // unrecognised message, just ignore! + common.Logger.Warningf("unrecognised message ignored: %v", msg) + return false, nil + } + return true, nil +} + +// recovers a party's original index in the set of parties during keygen +func (save LocalPartySaveData) OriginalIndex() (int, error) { + index := -1 + ki := save.ShareID + for j, kj := range save.Ks { + if kj.Cmp(ki) != 0 { + continue + } + index = j + break + } + if index < 0 { + return -1, errors.New("a party index could not be recovered from Ks") + } + return index, nil +} + +func (p *LocalParty) PartyID() *tss.PartyID { + return p.params.PartyID() +} + +func (p *LocalParty) String() string { + return fmt.Sprintf("id: %s, %s", p.PartyID(), p.BaseParty.String()) +} diff --git a/eddsa/keygen/local_party_test.go b/eddsa/keygen/local_party_test.go new file mode 100644 index 00000000..b5ab106c --- /dev/null +++ b/eddsa/keygen/local_party_test.go @@ -0,0 +1,238 @@ +// Copyright © 2019 Binance +// +// This file is part of Binance. The full Binance copyright notice, including +// terms governing use, modification, and redistribution, is contained in the +// file LICENSE at the root of the source code distribution tree. + +package keygen + +import ( + "encoding/json" + "fmt" + "math/big" + "os" + "runtime" + "sync/atomic" + "testing" + + "github.com/decred/dcrd/dcrec/edwards/v2" + "github.com/ipfs/go-log" + "github.com/stretchr/testify/assert" + + "github.com/binance-chain/tss-lib/common" + "github.com/binance-chain/tss-lib/crypto" + "github.com/binance-chain/tss-lib/crypto/vss" + "github.com/binance-chain/tss-lib/test" + "github.com/binance-chain/tss-lib/tss" +) + +const ( + testParticipants = TestParticipants + testThreshold = TestThreshold +) + +func setUp(level string) { + if err := log.SetLogLevel("tss-lib", level); err != nil { + panic(err) + } +} + +func TestE2EConcurrentAndSaveFixtures(t *testing.T) { + setUp("info") + + tss.SetCurve(edwards.Edwards()) + + threshold := testThreshold + fixtures, pIDs, err := LoadKeygenTestFixtures(testParticipants) + if err != nil { + common.Logger.Info("No test fixtures were found, so the safe primes will be generated from scratch. This may take a while...") + pIDs = tss.GenerateTestPartyIDs(testParticipants) + } + + p2pCtx := tss.NewPeerContext(pIDs) + parties := make([]*LocalParty, 0, len(pIDs)) + + errCh := make(chan *tss.Error, len(pIDs)) + outCh := make(chan tss.Message, len(pIDs)) + endCh := make(chan LocalPartySaveData, len(pIDs)) + + updater := test.SharedPartyUpdater + + startGR := runtime.NumGoroutine() + + // init the parties + for i := 0; i < len(pIDs); i++ { + var P *LocalParty + params := tss.NewParameters(p2pCtx, pIDs[i], len(pIDs), threshold) + if i < len(fixtures) { + P = NewLocalParty(params, outCh, endCh).(*LocalParty) + } else { + P = NewLocalParty(params, outCh, endCh).(*LocalParty) + } + parties = append(parties, P) + go func(P *LocalParty) { + if err := P.Start(); err != nil { + errCh <- err + } + }(P) + } + + // PHASE: keygen + var ended int32 +keygen: + for { + fmt.Printf("ACTIVE GOROUTINES: %d\n", runtime.NumGoroutine()) + select { + case err := <-errCh: + common.Logger.Errorf("Error: %s", err) + assert.FailNow(t, err.Error()) + break keygen + + case msg := <-outCh: + dest := msg.GetTo() + if dest == nil { // broadcast! + for _, P := range parties { + if P.PartyID().Index == msg.GetFrom().Index { + continue + } + go updater(P, msg, errCh) + } + } else { // point-to-point! + if dest[0].Index == msg.GetFrom().Index { + t.Fatalf("party %d tried to send a message to itself (%d)", dest[0].Index, msg.GetFrom().Index) + return + } + go updater(parties[dest[0].Index], msg, errCh) + } + + case save := <-endCh: + // SAVE a test fixture file for this P (if it doesn't already exist) + // .. here comes a workaround to recover this party's index (it was removed from save data) + index, err := save.OriginalIndex() + assert.NoErrorf(t, err, "should not be an error getting a party's index from save data") + tryWriteTestFixtureFile(t, index, save) + + atomic.AddInt32(&ended, 1) + if atomic.LoadInt32(&ended) == int32(len(pIDs)) { + t.Logf("Done. Received save data from %d participants", ended) + + // combine shares for each Pj to get u + u := new(big.Int) + for j, Pj := range parties { + pShares := make(vss.Shares, 0) + for j2, P := range parties { + if j2 == j { + continue + } + vssMsgs := P.temp.kgRound2Message1s + share := vssMsgs[j].Content().(*KGRound2Message1).Share + shareStruct := &vss.Share{ + Threshold: threshold, + ID: P.PartyID().KeyInt(), + Share: new(big.Int).SetBytes(share), + } + pShares = append(pShares, shareStruct) + } + uj, err := pShares[:threshold+1].ReConstruct() + assert.NoError(t, err, "vss.ReConstruct should not throw error") + + // uG test: u*G[j] == V[0] + assert.Equal(t, uj, Pj.temp.ui) + uG := crypto.ScalarBaseMult(tss.EC(), uj) + assert.True(t, uG.Equals(Pj.temp.vs[0]), "ensure u*G[j] == V_0") + + // xj tests: BigXj == xj*G + xj := Pj.data.Xi + gXj := crypto.ScalarBaseMult(tss.EC(), xj) + BigXj := Pj.data.BigXj[j] + assert.True(t, BigXj.Equals(gXj), "ensure BigX_j == g^x_j") + + // fails if threshold cannot be satisfied (bad share) + { + badShares := pShares[:threshold] + badShares[len(badShares)-1].Share.Set(big.NewInt(0)) + uj, err := pShares[:threshold].ReConstruct() + assert.NoError(t, err) + assert.NotEqual(t, parties[j].temp.ui, uj) + BigXjX, BigXjY := tss.EC().ScalarBaseMult(uj.Bytes()) + assert.NotEqual(t, BigXjX, Pj.temp.vs[0].X()) + assert.NotEqual(t, BigXjY, Pj.temp.vs[0].Y()) + } + u = new(big.Int).Add(u, uj) + } + u = new(big.Int).Mod(u, tss.EC().Params().N) + scalar := make([]byte, 0, 32) + copy(scalar, u.Bytes()) + + // build eddsa key pair + pkX, pkY := save.EDDSAPub.X(), save.EDDSAPub.Y() + pk := edwards.PublicKey{ + Curve: tss.EC(), + X: pkX, + Y: pkY, + } + println("u len: ", len(u.Bytes())) + sk, _, err := edwards.PrivKeyFromScalar(u.Bytes()) + // fmt.Println("err: ", err.Error()) + + // test pub key, should be on curve and match pkX, pkY + assert.True(t, pk.IsOnCurve(pkX, pkY), "public key must be on curve") + + // public key tests + assert.NotZero(t, u, "u should not be zero") + ourPkX, ourPkY := tss.EC().ScalarBaseMult(u.Bytes()) + assert.Equal(t, pkX, ourPkX, "pkX should match expected pk derived from u") + assert.Equal(t, pkY, ourPkY, "pkY should match expected pk derived from u") + t.Log("Public key tests done.") + + // make sure everyone has the same EDDSA public key + for _, Pj := range parties { + assert.Equal(t, pkX, Pj.data.EDDSAPub.X()) + assert.Equal(t, pkY, Pj.data.EDDSAPub.Y()) + } + t.Log("Public key distribution test done.") + + // test sign/verify + data := make([]byte, 32) + for i := range data { + data[i] = byte(i) + } + r, s, err := edwards.Sign(sk, data) + assert.NoError(t, err, "sign should not throw an error") + ok := edwards.Verify(&pk, data, r, s) + assert.True(t, ok, "signature should be ok") + t.Log("EDDSA signing test done.") + + t.Logf("Start goroutines: %d, End goroutines: %d", startGR, runtime.NumGoroutine()) + + break keygen + } + } + } +} + +func tryWriteTestFixtureFile(t *testing.T, index int, data LocalPartySaveData) { + fixtureFileName := makeTestFixtureFilePath(index) + + // fixture file does not already exist? + // if it does, we won't re-create it here + fi, err := os.Stat(fixtureFileName) + if !(err == nil && fi != nil && !fi.IsDir()) { + fd, err := os.OpenFile(fixtureFileName, os.O_WRONLY|os.O_CREATE|os.O_TRUNC, 0600) + if err != nil { + assert.NoErrorf(t, err, "unable to open fixture file %s for writing", fixtureFileName) + } + bz, err := json.Marshal(&data) + if err != nil { + t.Fatalf("unable to marshal save data for fixture file %s", fixtureFileName) + } + _, err = fd.Write(bz) + if err != nil { + t.Fatalf("unable to write to fixture file %s", fixtureFileName) + } + t.Logf("Saved a test fixture file for party %d: %s", index, fixtureFileName) + } else { + t.Logf("Fixture file already exists for party %d; not re-creating: %s", index, fixtureFileName) + } + // +} diff --git a/eddsa/keygen/messages.go b/eddsa/keygen/messages.go new file mode 100644 index 00000000..8bcfd650 --- /dev/null +++ b/eddsa/keygen/messages.go @@ -0,0 +1,133 @@ +// Copyright © 2019 Binance +// +// This file is part of Binance. The full Binance copyright notice, including +// terms governing use, modification, and redistribution, is contained in the +// file LICENSE at the root of the source code distribution tree. + +package keygen + +import ( + "math/big" + + "github.com/golang/protobuf/proto" + + "github.com/binance-chain/tss-lib/common" + "github.com/binance-chain/tss-lib/crypto" + cmt "github.com/binance-chain/tss-lib/crypto/commitments" + "github.com/binance-chain/tss-lib/crypto/schnorr" + "github.com/binance-chain/tss-lib/crypto/vss" + "github.com/binance-chain/tss-lib/tss" +) + +// These messages were generated from Protocol Buffers definitions into eddsa-keygen.pb.go +// The following messages are registered on the Protocol Buffers "wire" + +var ( + // Ensure that keygen messages implement ValidateBasic + _ = []tss.MessageContent{ + (*KGRound1Message)(nil), + (*KGRound2Message1)(nil), + (*KGRound2Message2)(nil), + } +) + +func init() { + proto.RegisterType((*KGRound1Message)(nil), tss.EDDSAProtoNamePrefix+"keygen.KGRound1Message") + proto.RegisterType((*KGRound2Message1)(nil), tss.EDDSAProtoNamePrefix+"keygen.KGRound2Message1") + proto.RegisterType((*KGRound2Message2)(nil), tss.EDDSAProtoNamePrefix+"keygen.KGRound2Message2") +} + +// ----- // + +func NewKGRound1Message(from *tss.PartyID, ct cmt.HashCommitment) tss.ParsedMessage { + meta := tss.MessageRouting{ + From: from, + IsBroadcast: true, + } + content := &KGRound1Message{ + Commitment: ct.Bytes(), + } + msg := tss.NewMessageWrapper(meta, content) + return tss.NewMessage(meta, content, msg) +} + +func (m *KGRound1Message) ValidateBasic() bool { + return m != nil && common.NonEmptyBytes(m.GetCommitment()) +} + +func (m *KGRound1Message) UnmarshalCommitment() *big.Int { + return new(big.Int).SetBytes(m.GetCommitment()) +} + +// ----- // + +func NewKGRound2Message1( + to, from *tss.PartyID, + share *vss.Share, +) tss.ParsedMessage { + meta := tss.MessageRouting{ + From: from, + To: []*tss.PartyID{to}, + IsBroadcast: false, + } + content := &KGRound2Message1{ + Share: share.Share.Bytes(), + } + msg := tss.NewMessageWrapper(meta, content) + return tss.NewMessage(meta, content, msg) +} + +func (m *KGRound2Message1) ValidateBasic() bool { + return m != nil && + common.NonEmptyBytes(m.GetShare()) +} + +func (m *KGRound2Message1) UnmarshalShare() *big.Int { + return new(big.Int).SetBytes(m.Share) +} + +// ----- // + +func NewKGRound2Message2( + from *tss.PartyID, + deCommitment cmt.HashDeCommitment, + proof *schnorr.ZKProof, +) tss.ParsedMessage { + meta := tss.MessageRouting{ + From: from, + IsBroadcast: true, + } + dcBzs := common.BigIntsToBytes(deCommitment) + content := &KGRound2Message2{ + DeCommitment: dcBzs, + ProofAlphaX: proof.Alpha.X().Bytes(), + ProofAlphaY: proof.Alpha.Y().Bytes(), + ProofT: proof.T.Bytes(), + } + msg := tss.NewMessageWrapper(meta, content) + return tss.NewMessage(meta, content, msg) +} + +func (m *KGRound2Message2) ValidateBasic() bool { + return m != nil && + common.NonEmptyMultiBytes(m.GetDeCommitment()) +} + +func (m *KGRound2Message2) UnmarshalDeCommitment() []*big.Int { + deComBzs := m.GetDeCommitment() + return cmt.NewHashDeCommitmentFromBytes(deComBzs) +} + +func (m *KGRound2Message2) UnmarshalZKProof() (*schnorr.ZKProof, error) { + point, err := crypto.NewECPoint( + tss.EC(), + new(big.Int).SetBytes(m.GetProofAlphaX()), + new(big.Int).SetBytes(m.GetProofAlphaY())) + if err != nil { + return nil, err + } + return &schnorr.ZKProof{ + Alpha: point, + T: new(big.Int).SetBytes(m.GetProofT()), + }, nil +} diff --git a/eddsa/keygen/round_1.go b/eddsa/keygen/round_1.go new file mode 100644 index 00000000..049e6f6e --- /dev/null +++ b/eddsa/keygen/round_1.go @@ -0,0 +1,108 @@ +// Copyright © 2019 Binance +// +// This file is part of Binance. The full Binance copyright notice, including +// terms governing use, modification, and redistribution, is contained in the +// file LICENSE at the root of the source code distribution tree. + +package keygen + +import ( + "errors" + "math/big" + + "github.com/binance-chain/tss-lib/common" + "github.com/binance-chain/tss-lib/crypto" + cmts "github.com/binance-chain/tss-lib/crypto/commitments" + "github.com/binance-chain/tss-lib/crypto/vss" + "github.com/binance-chain/tss-lib/tss" +) + +var ( + zero = big.NewInt(0) +) + +// round 1 represents round 1 of the keygen part of the EDDSA TSS spec +func newRound1(params *tss.Parameters, save *LocalPartySaveData, temp *localTempData, out chan<- tss.Message, end chan<- LocalPartySaveData) tss.Round { + return &round1{ + &base{params, save, temp, out, end, make([]bool, len(params.Parties().IDs())), false, 1}} +} + +func (round *round1) Start() *tss.Error { + if round.started { + return round.WrapError(errors.New("round already started")) + } + round.number = 1 + round.started = true + round.resetOK() + + Pi := round.PartyID() + i := Pi.Index + + // 1. calculate "partial" key share ui + ui := common.GetRandomPositiveInt(tss.EC().Params().N) + round.temp.ui = ui + + // 2. compute the vss shares + ids := round.Parties().IDs().Keys() + vs, shares, err := vss.Create(round.Threshold(), ui, ids) + if err != nil { + return round.WrapError(err, Pi) + } + round.save.Ks = ids + + // security: the original u_i may be discarded + ui = zero // clears the secret data from memory + _ = ui // silences a linter warning + + // 3. make commitment -> (C, D) + pGFlat, err := crypto.FlattenECPoints(vs) + if err != nil { + return round.WrapError(err, Pi) + } + cmt := cmts.NewHashCommitment(pGFlat...) + + // for this P: SAVE + // - shareID + // and keep in temporary storage: + // - VSS Vs + // - our set of Shamir shares + round.save.ShareID = ids[i] + round.temp.vs = vs + round.temp.shares = shares + + round.temp.deCommitPolyG = cmt.D + + // BROADCAST commitments + { + msg := NewKGRound1Message(round.PartyID(), cmt.C) + round.temp.kgRound1Messages[i] = msg + round.out <- msg + } + return nil +} + +func (round *round1) CanAccept(msg tss.ParsedMessage) bool { + if _, ok := msg.Content().(*KGRound1Message); ok { + return msg.IsBroadcast() + } + return false +} + +func (round *round1) Update() (bool, *tss.Error) { + for j, msg := range round.temp.kgRound1Messages { + if round.ok[j] { + continue + } + if msg == nil || !round.CanAccept(msg) { + return false, nil + } + // vss check is in round 2 + round.ok[j] = true + } + return true, nil +} + +func (round *round1) NextRound() tss.Round { + round.started = false + return &round2{round} +} diff --git a/eddsa/keygen/round_2.go b/eddsa/keygen/round_2.go new file mode 100644 index 00000000..f911a8f1 --- /dev/null +++ b/eddsa/keygen/round_2.go @@ -0,0 +1,92 @@ +// Copyright © 2019 Binance +// +// This file is part of Binance. The full Binance copyright notice, including +// terms governing use, modification, and redistribution, is contained in the +// file LICENSE at the root of the source code distribution tree. + +package keygen + +import ( + "errors" + + errors2 "github.com/pkg/errors" + + "github.com/binance-chain/tss-lib/crypto/schnorr" + "github.com/binance-chain/tss-lib/tss" +) + +func (round *round2) Start() *tss.Error { + if round.started { + return round.WrapError(errors.New("round already started")) + } + round.number = 2 + round.started = true + round.resetOK() + + i := round.PartyID().Index + + // 4. store r1 message pieces + for j, msg := range round.temp.kgRound1Messages { + r1msg := msg.Content().(*KGRound1Message) + round.temp.KGCs[j] = r1msg.UnmarshalCommitment() + } + + // 3. p2p send share ij to Pj + shares := round.temp.shares + for j, Pj := range round.Parties().IDs() { + r2msg1 := NewKGRound2Message1(Pj, round.PartyID(), shares[j]) + // do not send to this Pj, but store for round 3 + if j == i { + round.temp.kgRound2Message1s[j] = r2msg1 + continue + } + round.temp.kgRound2Message1s[i] = r2msg1 + round.out <- r2msg1 + } + + // 5. compute Schnorr prove + pii, err := schnorr.NewZKProof(round.temp.ui, round.temp.vs[0]) + if err != nil { + return round.WrapError(errors2.Wrapf(err, "NewZKProof(ui, vi0)")) + } + + // 5. BROADCAST de-commitments of Shamir poly*G and Schnorr prove + r2msg2 := NewKGRound2Message2(round.PartyID(), round.temp.deCommitPolyG, pii) + round.temp.kgRound2Message2s[i] = r2msg2 + round.out <- r2msg2 + + return nil +} + +func (round *round2) CanAccept(msg tss.ParsedMessage) bool { + if _, ok := msg.Content().(*KGRound2Message1); ok { + return !msg.IsBroadcast() + } + if _, ok := msg.Content().(*KGRound2Message2); ok { + return msg.IsBroadcast() + } + return false +} + +func (round *round2) Update() (bool, *tss.Error) { + // guard - VERIFY de-commit for all Pj + for j, msg := range round.temp.kgRound2Message1s { + if round.ok[j] { + continue + } + if msg == nil || !round.CanAccept(msg) { + return false, nil + } + msg2 := round.temp.kgRound2Message2s[j] + if msg2 == nil || !round.CanAccept(msg2) { + return false, nil + } + round.ok[j] = true + } + return true, nil +} + +func (round *round2) NextRound() tss.Round { + round.started = false + return &round3{round} +} diff --git a/eddsa/keygen/round_3.go b/eddsa/keygen/round_3.go new file mode 100644 index 00000000..2b219a99 --- /dev/null +++ b/eddsa/keygen/round_3.go @@ -0,0 +1,208 @@ +// Copyright © 2019 Binance +// +// This file is part of Binance. The full Binance copyright notice, including +// terms governing use, modification, and redistribution, is contained in the +// file LICENSE at the root of the source code distribution tree. + +package keygen + +import ( + "errors" + "math/big" + + "github.com/hashicorp/go-multierror" + errors2 "github.com/pkg/errors" + + "github.com/binance-chain/tss-lib/common" + "github.com/binance-chain/tss-lib/crypto" + "github.com/binance-chain/tss-lib/crypto/commitments" + "github.com/binance-chain/tss-lib/crypto/vss" + "github.com/binance-chain/tss-lib/tss" +) + +func (round *round3) Start() *tss.Error { + if round.started { + return round.WrapError(errors.New("round already started")) + } + round.number = 3 + round.started = true + round.resetOK() + + Ps := round.Parties().IDs() + PIdx := round.PartyID().Index + + // 1,10. calculate xi + xi := new(big.Int).Set(round.temp.shares[PIdx].Share) + for j := range Ps { + if j == PIdx { + continue + } + r2msg1 := round.temp.kgRound2Message1s[j].Content().(*KGRound2Message1) + share := r2msg1.UnmarshalShare() + xi = new(big.Int).Add(xi, share) + } + round.save.Xi = new(big.Int).Mod(xi, tss.EC().Params().N) + + // 2-3. + Vc := make(vss.Vs, round.Threshold()+1) + for c := range Vc { + Vc[c] = round.temp.vs[c] // ours + } + + // 4-12. + type vssOut struct { + unWrappedErr error + pjVs vss.Vs + } + chs := make([]chan vssOut, len(Ps)) + for i := range chs { + if i == PIdx { + continue + } + chs[i] = make(chan vssOut) + } + for j := range Ps { + if j == PIdx { + continue + } + // 6-9. + go func(j int, ch chan<- vssOut) { + // 4-10. + KGCj := round.temp.KGCs[j] + r2msg2 := round.temp.kgRound2Message2s[j].Content().(*KGRound2Message2) + KGDj := r2msg2.UnmarshalDeCommitment() + cmtDeCmt := commitments.HashCommitDecommit{C: KGCj, D: KGDj} + ok, flatPolyGs := cmtDeCmt.DeCommit() + if !ok || flatPolyGs == nil { + ch <- vssOut{errors.New("de-commitment verify failed"), nil} + return + } + PjVs, err := crypto.UnFlattenECPoints(tss.EC(), flatPolyGs) + if err != nil { + ch <- vssOut{err, nil} + return + } + proof, err := r2msg2.UnmarshalZKProof() + if err != nil { + ch <- vssOut{errors.New("failed to unmarshal schnorr proof"), nil} + return + } + ok = proof.Verify(PjVs[0]) + if !ok { + ch <- vssOut{errors.New("failed to prove schnorr proof"), nil} + return + } + r2msg1 := round.temp.kgRound2Message1s[j].Content().(*KGRound2Message1) + PjShare := vss.Share{ + Threshold: round.Threshold(), + ID: round.PartyID().KeyInt(), + Share: r2msg1.UnmarshalShare(), + } + if ok = PjShare.Verify(round.Threshold(), PjVs); !ok { + ch <- vssOut{errors.New("vss verify failed"), nil} + return + } + // (9) handled above + ch <- vssOut{nil, PjVs} + }(j, chs[j]) + } + + // consume unbuffered channels (end the goroutines) + vssResults := make([]vssOut, len(Ps)) + { + culprits := make([]*tss.PartyID, 0, len(Ps)) // who caused the error(s) + for j, Pj := range Ps { + if j == PIdx { + continue + } + vssResults[j] = <-chs[j] + // collect culprits to error out with + if err := vssResults[j].unWrappedErr; err != nil { + culprits = append(culprits, Pj) + } + } + var multiErr error + if len(culprits) > 0 { + for _, vssResult := range vssResults { + if vssResult.unWrappedErr == nil { + continue + } + multiErr = multierror.Append(multiErr, vssResult.unWrappedErr) + } + return round.WrapError(multiErr, culprits...) + } + } + { + var err error + culprits := make([]*tss.PartyID, 0, len(Ps)) // who caused the error(s) + for j, Pj := range Ps { + if j == PIdx { + continue + } + // 11-12. + PjVs := vssResults[j].pjVs + for c := 0; c <= round.Threshold(); c++ { + Vc[c], err = Vc[c].Add(PjVs[c]) + if err != nil { + culprits = append(culprits, Pj) + } + } + } + if len(culprits) > 0 { + return round.WrapError(errors.New("adding PjVs[c] to Vc[c] resulted in a point not on the curve"), culprits...) + } + } + + // 13-17. compute Xj for each Pj + { + var err error + modQ := common.ModInt(tss.EC().Params().N) + culprits := make([]*tss.PartyID, 0, len(Ps)) // who caused the error(s) + bigXj := round.save.BigXj + for j := 0; j < round.PartyCount(); j++ { + Pj := round.Parties().IDs()[j] + kj := Pj.KeyInt() + BigXj := Vc[0] + z := new(big.Int).SetInt64(int64(1)) + for c := 1; c <= round.Threshold(); c++ { + z = modQ.Mul(z, kj) + BigXj, err = BigXj.Add(Vc[c].ScalarMult(z)) + if err != nil { + culprits = append(culprits, Pj) + } + } + bigXj[j] = BigXj + } + if len(culprits) > 0 { + return round.WrapError(errors.New("adding Vc[c].ScalarMult(z) to BigXj resulted in a point not on the curve"), culprits...) + } + round.save.BigXj = bigXj + } + + // 18. compute and SAVE the EDDSA public key `y` + eddsaPubKey, err := crypto.NewECPoint(tss.EC(), Vc[0].X(), Vc[0].Y()) + if err != nil { + return round.WrapError(errors2.Wrapf(err, "public key is not on the curve")) + } + round.save.EDDSAPub = eddsaPubKey + + // PRINT public key & private share + common.Logger.Debugf("%s public key: %x", round.PartyID(), eddsaPubKey) + + round.end <- *round.save + return nil +} + +func (round *round3) CanAccept(msg tss.ParsedMessage) bool { + // not expecting any incoming messages in this round + return false +} + +func (round *round3) Update() (bool, *tss.Error) { + // not expecting any incoming messages in this round + return false, nil +} + +func (round *round3) NextRound() tss.Round { + return nil // finished! +} diff --git a/eddsa/keygen/rounds.go b/eddsa/keygen/rounds.go new file mode 100644 index 00000000..3cb52f3f --- /dev/null +++ b/eddsa/keygen/rounds.go @@ -0,0 +1,84 @@ +// Copyright © 2019 Binance +// +// This file is part of Binance. The full Binance copyright notice, including +// terms governing use, modification, and redistribution, is contained in the +// file LICENSE at the root of the source code distribution tree. + +package keygen + +import ( + "github.com/binance-chain/tss-lib/tss" +) + +const ( + TaskName = "eddsa-keygen" +) + +type ( + base struct { + *tss.Parameters + save *LocalPartySaveData + temp *localTempData + out chan<- tss.Message + end chan<- LocalPartySaveData + ok []bool // `ok` tracks parties which have been verified by Update() + started bool + number int + } + round1 struct { + *base + } + round2 struct { + *round1 + } + round3 struct { + *round2 + } +) + +func (round *base) Params() *tss.Parameters { + return round.Parameters +} + +func (round *base) RoundNumber() int { + return round.number +} + +// CanProceed is inherited by other rounds +func (round *base) CanProceed() bool { + if !round.started { + return false + } + for _, ok := range round.ok { + if !ok { + return false + } + } + return true +} + +// WaitingFor is called by a Party for reporting back to the caller +func (round *base) WaitingFor() []*tss.PartyID { + Ps := round.Parties().IDs() + ids := make([]*tss.PartyID, 0, len(round.ok)) + for j, ok := range round.ok { + if ok { + continue + } + ids = append(ids, Ps[j]) + } + return ids +} + +func (round *base) WrapError(err error, culprits ...*tss.PartyID) *tss.Error { + return tss.NewError(err, TaskName, round.number, round.PartyID(), culprits...) +} + +// ----- // + +// `ok` tracks parties which have been verified by Update() +func (round *base) resetOK() { + for j := range round.ok { + round.ok[j] = false + } +} diff --git a/eddsa/keygen/save_data.go b/eddsa/keygen/save_data.go new file mode 100644 index 00000000..df131caf --- /dev/null +++ b/eddsa/keygen/save_data.go @@ -0,0 +1,63 @@ +// Copyright © 2019 Binance +// +// This file is part of Binance. The full Binance copyright notice, including +// terms governing use, modification, and redistribution, is contained in the +// file LICENSE at the root of the source code distribution tree. + +package keygen + +import ( + "encoding/hex" + "math/big" + + "github.com/binance-chain/tss-lib/common" + "github.com/binance-chain/tss-lib/crypto" + "github.com/binance-chain/tss-lib/tss" +) + +type ( + LocalSecrets struct { + // secret fields (not shared, but stored locally) + Xi, ShareID *big.Int // xi, kj + } + + // Everything in LocalPartySaveData is saved locally to user's HD when done + LocalPartySaveData struct { + LocalSecrets + + // original indexes (ki in signing preparation phase) + Ks []*big.Int + + // public keys (Xj = uj*G for each Pj) + BigXj []*crypto.ECPoint // Xj + + // used for test assertions (may be discarded) + EDDSAPub *crypto.ECPoint // y + } +) + +func NewLocalPartySaveData(partyCount int) (saveData LocalPartySaveData) { + saveData.Ks = make([]*big.Int, partyCount) + saveData.BigXj = make([]*crypto.ECPoint, partyCount) + return +} + +// BuildLocalSaveDataSubset re-creates the LocalPartySaveData to contain data for only the list of signing parties. +func BuildLocalSaveDataSubset(sourceData LocalPartySaveData, sortedIDs tss.SortedPartyIDs) LocalPartySaveData { + keysToIndices := make(map[string]int, len(sourceData.Ks)) + for j, kj := range sourceData.Ks { + keysToIndices[hex.EncodeToString(kj.Bytes())] = j + } + newData := NewLocalPartySaveData(sortedIDs.Len()) + newData.LocalSecrets = sourceData.LocalSecrets + newData.EDDSAPub = sourceData.EDDSAPub + for j, id := range sortedIDs { + savedIdx, ok := keysToIndices[hex.EncodeToString(id.Key)] + if !ok { + common.Logger.Warning("BuildLocalSaveDataSubset: unable to find a signer party in the local save data", id) + } + newData.Ks[j] = sourceData.Ks[savedIdx] + newData.BigXj[j] = sourceData.BigXj[savedIdx] + } + return newData +} diff --git a/eddsa/keygen/test_utils.go b/eddsa/keygen/test_utils.go new file mode 100644 index 00000000..5cd70d33 --- /dev/null +++ b/eddsa/keygen/test_utils.go @@ -0,0 +1,109 @@ +// Copyright © 2019 Binance +// +// This file is part of Binance. The full Binance copyright notice, including +// terms governing use, modification, and redistribution, is contained in the +// file LICENSE at the root of the source code distribution tree. + +package keygen + +import ( + "encoding/json" + "fmt" + "io/ioutil" + "math/rand" + "path/filepath" + "runtime" + "sort" + + "github.com/pkg/errors" + + "github.com/binance-chain/tss-lib/test" + "github.com/binance-chain/tss-lib/tss" +) + +const ( + // To change these parameters, you must first delete the text fixture files in test/_fixtures/ and then run the keygen test alone. + // Then the signing and resharing tests will work with the new n, t configuration using the newly written fixture files. + TestParticipants = test.TestParticipants + TestThreshold = test.TestParticipants / 2 +) +const ( + testFixtureDirFormat = "%s/../../test/_eddsa_fixtures" + testFixtureFileFormat = "keygen_data_%d.json" +) + +func LoadKeygenTestFixtures(qty int, optionalStart ...int) ([]LocalPartySaveData, tss.SortedPartyIDs, error) { + keys := make([]LocalPartySaveData, 0, qty) + start := 0 + if 0 < len(optionalStart) { + start = optionalStart[0] + } + for i := start; i < qty; i++ { + fixtureFilePath := makeTestFixtureFilePath(i) + bz, err := ioutil.ReadFile(fixtureFilePath) + if err != nil { + return nil, nil, errors.Wrapf(err, + "could not open the test fixture for party %d in the expected location: %s. run keygen tests first.", + i, fixtureFilePath) + } + var key LocalPartySaveData + if err = json.Unmarshal(bz, &key); err != nil { + return nil, nil, errors.Wrapf(err, + "could not unmarshal fixture data for party %d located at: %s", + i, fixtureFilePath) + } + keys = append(keys, key) + } + partyIDs := make(tss.UnSortedPartyIDs, len(keys)) + for i, key := range keys { + pMoniker := fmt.Sprintf("%d", i+start+1) + partyIDs[i] = tss.NewPartyID(pMoniker, pMoniker, key.ShareID) + } + sortedPIDs := tss.SortPartyIDs(partyIDs) + return keys, sortedPIDs, nil +} + +func LoadKeygenTestFixturesRandomSet(qty, fixtureCount int) ([]LocalPartySaveData, tss.SortedPartyIDs, error) { + keys := make([]LocalPartySaveData, 0, qty) + plucked := make(map[int]interface{}, qty) + for i := 0; len(plucked) < qty; i = (i + 1) % fixtureCount { + _, have := plucked[i] + if pluck := rand.Float32() < 0.5; !have && pluck { + plucked[i] = new(struct{}) + } + } + for i := range plucked { + fixtureFilePath := makeTestFixtureFilePath(i) + bz, err := ioutil.ReadFile(fixtureFilePath) + if err != nil { + return nil, nil, errors.Wrapf(err, + "could not open the test fixture for party %d in the expected location: %s. run keygen tests first.", + i, fixtureFilePath) + } + var key LocalPartySaveData + if err = json.Unmarshal(bz, &key); err != nil { + return nil, nil, errors.Wrapf(err, + "could not unmarshal fixture data for party %d located at: %s", + i, fixtureFilePath) + } + keys = append(keys, key) + } + partyIDs := make(tss.UnSortedPartyIDs, len(keys)) + j := 0 + for i := range plucked { + key := keys[j] + pMoniker := fmt.Sprintf("%d", i+1) + partyIDs[j] = tss.NewPartyID(pMoniker, pMoniker, key.ShareID) + j++ + } + sortedPIDs := tss.SortPartyIDs(partyIDs) + sort.Slice(keys, func(i, j int) bool { return keys[i].ShareID.Cmp(keys[j].ShareID) == -1 }) + return keys, sortedPIDs, nil +} + +func makeTestFixtureFilePath(partyIndex int) string { + _, callerFileName, _, _ := runtime.Caller(0) + srcDirName := filepath.Dir(callerFileName) + fixtureDirName := fmt.Sprintf(testFixtureDirFormat, srcDirName) + return fmt.Sprintf("%s/"+testFixtureFileFormat, fixtureDirName, partyIndex) +} diff --git a/eddsa/resharing/eddsa-resharing.pb.go b/eddsa/resharing/eddsa-resharing.pb.go new file mode 100644 index 00000000..b581313a --- /dev/null +++ b/eddsa/resharing/eddsa-resharing.pb.go @@ -0,0 +1,254 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// source: eddsa-resharing.proto + +package resharing + +import ( + fmt "fmt" + math "math" + + proto "github.com/golang/protobuf/proto" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package + +// +// The Round 1 data is broadcast to peers of the New Committee in this message. +type DGRound1Message struct { + EddsaPubX []byte `protobuf:"bytes,1,opt,name=eddsa_pub_x,json=eddsaPubX,proto3" json:"eddsa_pub_x,omitempty"` + EddsaPubY []byte `protobuf:"bytes,2,opt,name=eddsa_pub_y,json=eddsaPubY,proto3" json:"eddsa_pub_y,omitempty"` + VCommitment []byte `protobuf:"bytes,3,opt,name=v_commitment,json=vCommitment,proto3" json:"v_commitment,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *DGRound1Message) Reset() { *m = DGRound1Message{} } +func (m *DGRound1Message) String() string { return proto.CompactTextString(m) } +func (*DGRound1Message) ProtoMessage() {} +func (*DGRound1Message) Descriptor() ([]byte, []int) { + return fileDescriptor_d6ac4d7ec55a8fe1, []int{0} +} + +func (m *DGRound1Message) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_DGRound1Message.Unmarshal(m, b) +} +func (m *DGRound1Message) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_DGRound1Message.Marshal(b, m, deterministic) +} +func (m *DGRound1Message) XXX_Merge(src proto.Message) { + xxx_messageInfo_DGRound1Message.Merge(m, src) +} +func (m *DGRound1Message) XXX_Size() int { + return xxx_messageInfo_DGRound1Message.Size(m) +} +func (m *DGRound1Message) XXX_DiscardUnknown() { + xxx_messageInfo_DGRound1Message.DiscardUnknown(m) +} + +var xxx_messageInfo_DGRound1Message proto.InternalMessageInfo + +func (m *DGRound1Message) GetEddsaPubX() []byte { + if m != nil { + return m.EddsaPubX + } + return nil +} + +func (m *DGRound1Message) GetEddsaPubY() []byte { + if m != nil { + return m.EddsaPubY + } + return nil +} + +func (m *DGRound1Message) GetVCommitment() []byte { + if m != nil { + return m.VCommitment + } + return nil +} + +// +// The Round 2 "ACK" is broadcast to peers of the Old Committee in this message. +type DGRound2Message struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *DGRound2Message) Reset() { *m = DGRound2Message{} } +func (m *DGRound2Message) String() string { return proto.CompactTextString(m) } +func (*DGRound2Message) ProtoMessage() {} +func (*DGRound2Message) Descriptor() ([]byte, []int) { + return fileDescriptor_d6ac4d7ec55a8fe1, []int{1} +} + +func (m *DGRound2Message) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_DGRound2Message2.Unmarshal(m, b) +} +func (m *DGRound2Message) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_DGRound2Message2.Marshal(b, m, deterministic) +} +func (m *DGRound2Message) XXX_Merge(src proto.Message) { + xxx_messageInfo_DGRound2Message2.Merge(m, src) +} +func (m *DGRound2Message) XXX_Size() int { + return xxx_messageInfo_DGRound2Message2.Size(m) +} +func (m *DGRound2Message) XXX_DiscardUnknown() { + xxx_messageInfo_DGRound2Message2.DiscardUnknown(m) +} + +var xxx_messageInfo_DGRound2Message2 proto.InternalMessageInfo + +// +// The Round 3 data is sent to peers of the New Committee in this message. +type DGRound3Message1 struct { + Share []byte `protobuf:"bytes,1,opt,name=share,proto3" json:"share,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *DGRound3Message1) Reset() { *m = DGRound3Message1{} } +func (m *DGRound3Message1) String() string { return proto.CompactTextString(m) } +func (*DGRound3Message1) ProtoMessage() {} +func (*DGRound3Message1) Descriptor() ([]byte, []int) { + return fileDescriptor_d6ac4d7ec55a8fe1, []int{2} +} + +func (m *DGRound3Message1) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_DGRound3Message1.Unmarshal(m, b) +} +func (m *DGRound3Message1) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_DGRound3Message1.Marshal(b, m, deterministic) +} +func (m *DGRound3Message1) XXX_Merge(src proto.Message) { + xxx_messageInfo_DGRound3Message1.Merge(m, src) +} +func (m *DGRound3Message1) XXX_Size() int { + return xxx_messageInfo_DGRound3Message1.Size(m) +} +func (m *DGRound3Message1) XXX_DiscardUnknown() { + xxx_messageInfo_DGRound3Message1.DiscardUnknown(m) +} + +var xxx_messageInfo_DGRound3Message1 proto.InternalMessageInfo + +func (m *DGRound3Message1) GetShare() []byte { + if m != nil { + return m.Share + } + return nil +} + +// +// The Round 3 data is broadcast to peers of the New Committee in this message. +type DGRound3Message2 struct { + VDecommitment [][]byte `protobuf:"bytes,1,rep,name=v_decommitment,json=vDecommitment,proto3" json:"v_decommitment,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *DGRound3Message2) Reset() { *m = DGRound3Message2{} } +func (m *DGRound3Message2) String() string { return proto.CompactTextString(m) } +func (*DGRound3Message2) ProtoMessage() {} +func (*DGRound3Message2) Descriptor() ([]byte, []int) { + return fileDescriptor_d6ac4d7ec55a8fe1, []int{3} +} + +func (m *DGRound3Message2) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_DGRound3Message2.Unmarshal(m, b) +} +func (m *DGRound3Message2) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_DGRound3Message2.Marshal(b, m, deterministic) +} +func (m *DGRound3Message2) XXX_Merge(src proto.Message) { + xxx_messageInfo_DGRound3Message2.Merge(m, src) +} +func (m *DGRound3Message2) XXX_Size() int { + return xxx_messageInfo_DGRound3Message2.Size(m) +} +func (m *DGRound3Message2) XXX_DiscardUnknown() { + xxx_messageInfo_DGRound3Message2.DiscardUnknown(m) +} + +var xxx_messageInfo_DGRound3Message2 proto.InternalMessageInfo + +func (m *DGRound3Message2) GetVDecommitment() [][]byte { + if m != nil { + return m.VDecommitment + } + return nil +} + +// +// The Round 4 "ACK" is broadcast to peers of the Old and New Committees from the New Committee in this message. +type DGRound4Message struct { + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *DGRound4Message) Reset() { *m = DGRound4Message{} } +func (m *DGRound4Message) String() string { return proto.CompactTextString(m) } +func (*DGRound4Message) ProtoMessage() {} +func (*DGRound4Message) Descriptor() ([]byte, []int) { + return fileDescriptor_d6ac4d7ec55a8fe1, []int{4} +} + +func (m *DGRound4Message) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_DGRound4Message.Unmarshal(m, b) +} +func (m *DGRound4Message) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_DGRound4Message.Marshal(b, m, deterministic) +} +func (m *DGRound4Message) XXX_Merge(src proto.Message) { + xxx_messageInfo_DGRound4Message.Merge(m, src) +} +func (m *DGRound4Message) XXX_Size() int { + return xxx_messageInfo_DGRound4Message.Size(m) +} +func (m *DGRound4Message) XXX_DiscardUnknown() { + xxx_messageInfo_DGRound4Message.DiscardUnknown(m) +} + +var xxx_messageInfo_DGRound4Message proto.InternalMessageInfo + +func init() { + proto.RegisterType((*DGRound1Message)(nil), "DGRound1Message") + proto.RegisterType((*DGRound2Message)(nil), "DGRound2Message") + proto.RegisterType((*DGRound3Message1)(nil), "DGRound3Message1") + proto.RegisterType((*DGRound3Message2)(nil), "DGRound3Message2") + proto.RegisterType((*DGRound4Message)(nil), "DGRound4Message") +} + +func init() { proto.RegisterFile("eddsa-resharing.proto", fileDescriptor_d6ac4d7ec55a8fe1) } + +var fileDescriptor_d6ac4d7ec55a8fe1 = []byte{ + // 203 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x12, 0x4d, 0x4d, 0x49, 0x29, + 0x4e, 0xd4, 0x2d, 0x4a, 0x2d, 0xce, 0x48, 0x2c, 0xca, 0xcc, 0x4b, 0xd7, 0x2b, 0x28, 0xca, 0x2f, + 0xc9, 0x57, 0x2a, 0xe1, 0xe2, 0x77, 0x71, 0x0f, 0xca, 0x2f, 0xcd, 0x4b, 0x31, 0xf4, 0x4d, 0x2d, + 0x2e, 0x4e, 0x4c, 0x4f, 0x15, 0x92, 0xe3, 0xe2, 0x06, 0xab, 0x8d, 0x2f, 0x28, 0x4d, 0x8a, 0xaf, + 0x90, 0x60, 0x54, 0x60, 0xd4, 0xe0, 0x09, 0xe2, 0x04, 0x0b, 0x05, 0x94, 0x26, 0x45, 0xa0, 0xca, + 0x57, 0x4a, 0x30, 0xa1, 0xca, 0x47, 0x0a, 0x29, 0x72, 0xf1, 0x94, 0xc5, 0x27, 0xe7, 0xe7, 0xe6, + 0x66, 0x96, 0xe4, 0xa6, 0xe6, 0x95, 0x48, 0x30, 0x83, 0x15, 0x70, 0x97, 0x39, 0xc3, 0x85, 0x94, + 0x84, 0xb8, 0x04, 0xa0, 0xb6, 0x1a, 0x41, 0x6d, 0x35, 0x52, 0xd2, 0x80, 0x8b, 0x19, 0x43, 0xc5, + 0x0c, 0x85, 0x44, 0xb8, 0x58, 0x41, 0xce, 0x4d, 0x85, 0x3a, 0x02, 0xc2, 0x51, 0xb2, 0xc4, 0x50, + 0x69, 0x24, 0xa4, 0xca, 0xc5, 0x57, 0x16, 0x9f, 0x92, 0x8a, 0x64, 0x2d, 0xa3, 0x02, 0xb3, 0x06, + 0x4f, 0x10, 0x6f, 0x99, 0x0b, 0x92, 0xa0, 0x92, 0x20, 0xdc, 0xbb, 0x26, 0x50, 0xad, 0x4e, 0x82, + 0x51, 0xfc, 0x60, 0xb7, 0xeb, 0xc3, 0x83, 0x26, 0x89, 0x0d, 0x1c, 0x36, 0xc6, 0x80, 0x00, 0x00, + 0x00, 0xff, 0xff, 0x76, 0xdf, 0xde, 0x85, 0x34, 0x01, 0x00, 0x00, +} diff --git a/eddsa/resharing/local_party.go b/eddsa/resharing/local_party.go new file mode 100644 index 00000000..bcbbaada --- /dev/null +++ b/eddsa/resharing/local_party.go @@ -0,0 +1,153 @@ +// Copyright © 2019 Binance +// +// This file is part of Binance. The full Binance copyright notice, including +// terms governing use, modification, and redistribution, is contained in the +// file LICENSE at the root of the source code distribution tree. + +package resharing + +import ( + "fmt" + "math/big" + + "github.com/binance-chain/tss-lib/common" + "github.com/binance-chain/tss-lib/crypto" + cmt "github.com/binance-chain/tss-lib/crypto/commitments" + "github.com/binance-chain/tss-lib/crypto/vss" + "github.com/binance-chain/tss-lib/eddsa/keygen" + "github.com/binance-chain/tss-lib/tss" +) + +// Implements Party +// Implements Stringer +var _ tss.Party = (*LocalParty)(nil) +var _ fmt.Stringer = (*LocalParty)(nil) + +type ( + LocalParty struct { + *tss.BaseParty + params *tss.ReSharingParameters + + temp localTempData + input, save keygen.LocalPartySaveData + + // outbound messaging + out chan<- tss.Message + end chan<- keygen.LocalPartySaveData + } + + localMessageStore struct { + dgRound1Messages, + dgRound2Messages, + dgRound3Message1s, + dgRound3Message2s, + dgRound4Messages []tss.ParsedMessage + } + + localTempData struct { + localMessageStore + + // temp data (thrown away after rounds) + NewVs vss.Vs + NewShares vss.Shares + VD cmt.HashDeCommitment + + // temporary storage of data that is persisted by the new party in round 5 if all "ACK" messages are received + newXi *big.Int + newKs []*big.Int + newBigXjs []*crypto.ECPoint // Xj to save in round 5 + } +) + +// Exported, used in `tss` client +// The `key` is read from and/or written to depending on whether this party is part of the old or the new committee. +// You may optionally generate and set the LocalPreParams if you would like to use pre-generated safe primes and Paillier secret. +// (This is similar to providing the `optionalPreParams` to `keygen.LocalParty`). +func NewLocalParty( + params *tss.ReSharingParameters, + key keygen.LocalPartySaveData, + out chan<- tss.Message, + end chan<- keygen.LocalPartySaveData, +) tss.Party { + subset := key + if params.IsOldCommittee() { + subset = keygen.BuildLocalSaveDataSubset(key, params.OldParties().IDs()) + } + p := &LocalParty{ + BaseParty: new(tss.BaseParty), + params: params, + temp: localTempData{}, + input: subset, + save: keygen.NewLocalPartySaveData(params.NewPartyCount()), + out: out, + end: end, + } + // msgs init + p.temp.dgRound1Messages = make([]tss.ParsedMessage, params.Threshold()+1) // from t+1 of Old Committee + p.temp.dgRound2Messages = make([]tss.ParsedMessage, params.NewPartyCount()) // " + p.temp.dgRound3Message1s = make([]tss.ParsedMessage, params.Threshold()+1) // from t+1 of Old Committee + p.temp.dgRound3Message2s = make([]tss.ParsedMessage, params.Threshold()+1) // " + p.temp.dgRound4Messages = make([]tss.ParsedMessage, params.NewPartyCount()) // from n of New Committee + + return p +} + +func (p *LocalParty) FirstRound() tss.Round { + return newRound1(p.params, &p.input, &p.save, &p.temp, p.out, p.end) +} + +func (p *LocalParty) Start() *tss.Error { + return tss.BaseStart(p, TaskName) +} + +func (p *LocalParty) Update(msg tss.ParsedMessage) (ok bool, err *tss.Error) { + return tss.BaseUpdate(p, msg, TaskName) +} + +func (p *LocalParty) UpdateFromBytes(wireBytes []byte, from *tss.PartyID, isBroadcast bool) (bool, *tss.Error) { + msg, err := tss.ParseWireMessage(wireBytes, from, isBroadcast) + if err != nil { + return false, p.WrapError(err) + } + return p.Update(msg) +} + +func (p *LocalParty) StoreMessage(msg tss.ParsedMessage) (bool, *tss.Error) { + // ValidateBasic is cheap; double-check the message here in case the public StoreMessage was called externally + if ok, err := p.ValidateMessage(msg); !ok || err != nil { + return ok, err + } + fromPIdx := msg.GetFrom().Index + + // switch/case is necessary to store any messages beyond current round + // this does not handle message replays. we expect the caller to apply replay and spoofing protection. + switch msg.Content().(type) { + case *DGRound1Message: + p.temp.dgRound1Messages[fromPIdx] = msg + + case *DGRound2Message: + p.temp.dgRound2Messages[fromPIdx] = msg + + case *DGRound3Message1: + p.temp.dgRound3Message1s[fromPIdx] = msg + + case *DGRound3Message2: + p.temp.dgRound3Message2s[fromPIdx] = msg + + case *DGRound4Message: + p.temp.dgRound4Messages[fromPIdx] = msg + + default: // unrecognised message, just ignore! + common.Logger.Warningf("unrecognised message ignored: %v", msg) + return false, nil + } + return true, nil +} + +func (p *LocalParty) PartyID() *tss.PartyID { + return p.params.PartyID() +} + +func (p *LocalParty) String() string { + return fmt.Sprintf("id: %s, %s", p.PartyID(), p.BaseParty.String()) +} diff --git a/eddsa/resharing/local_party_test.go b/eddsa/resharing/local_party_test.go new file mode 100644 index 00000000..90d721cb --- /dev/null +++ b/eddsa/resharing/local_party_test.go @@ -0,0 +1,229 @@ +// Copyright © 2019 Binance +// +// This file is part of Binance. The full Binance copyright notice, including +// terms governing use, modification, and redistribution, is contained in the +// file LICENSE at the root of the source code distribution tree. + +package resharing_test + +import ( + "math/big" + "sync/atomic" + "testing" + + "github.com/decred/dcrd/dcrec/edwards/v2" + "github.com/ipfs/go-log" + "github.com/stretchr/testify/assert" + + "github.com/binance-chain/tss-lib/common" + "github.com/binance-chain/tss-lib/crypto" + "github.com/binance-chain/tss-lib/eddsa/keygen" + . "github.com/binance-chain/tss-lib/eddsa/resharing" + "github.com/binance-chain/tss-lib/eddsa/signing" + "github.com/binance-chain/tss-lib/test" + "github.com/binance-chain/tss-lib/tss" +) + +const ( + testParticipants = test.TestParticipants + testThreshold = test.TestThreshold +) + +func setUp(level string) { + if err := log.SetLogLevel("tss-lib", level); err != nil { + panic(err) + } +} + +func TestE2EConcurrent(t *testing.T) { + setUp("info") + + tss.SetCurve(edwards.Edwards()) + + threshold, newThreshold := testThreshold, testThreshold + + // PHASE: load keygen fixtures + firstPartyIdx := 5 + oldKeys, oldPIDs, err := keygen.LoadKeygenTestFixtures(testThreshold+1+firstPartyIdx, firstPartyIdx) + assert.NoError(t, err, "should load keygen fixtures") + + // PHASE: resharing + oldP2PCtx := tss.NewPeerContext(oldPIDs) + + // init the new parties; re-use the fixture pre-params for speed + newPIDs := tss.GenerateTestPartyIDs(testParticipants) + newP2PCtx := tss.NewPeerContext(newPIDs) + newPCount := len(newPIDs) + + oldCommittee := make([]*LocalParty, 0, len(oldPIDs)) + newCommittee := make([]*LocalParty, 0, newPCount) + bothCommitteesPax := len(oldCommittee) + len(newCommittee) + + errCh := make(chan *tss.Error, bothCommitteesPax) + outCh := make(chan tss.Message, bothCommitteesPax) + endCh := make(chan keygen.LocalPartySaveData, bothCommitteesPax) + + updater := test.SharedPartyUpdater + + // init the old parties first + for j, pID := range oldPIDs { + params := tss.NewReSharingParameters(oldP2PCtx, newP2PCtx, pID, testParticipants, threshold, newPCount, newThreshold) + P := NewLocalParty(params, oldKeys[j], outCh, endCh).(*LocalParty) // discard old key data + oldCommittee = append(oldCommittee, P) + } + + // init the new parties + for _, pID := range newPIDs { + params := tss.NewReSharingParameters(oldP2PCtx, newP2PCtx, pID, testParticipants, threshold, newPCount, newThreshold) + save := keygen.NewLocalPartySaveData(newPCount) + P := NewLocalParty(params, save, outCh, endCh).(*LocalParty) + newCommittee = append(newCommittee, P) + } + + // start the new parties; they will wait for messages + for _, P := range newCommittee { + go func(P *LocalParty) { + if err := P.Start(); err != nil { + errCh <- err + } + }(P) + } + // start the old parties; they will send messages + for _, P := range oldCommittee { + go func(P *LocalParty) { + if err := P.Start(); err != nil { + errCh <- err + } + }(P) + } + + newKeys := make([]keygen.LocalPartySaveData, len(newCommittee)) + endedOldCommittee := 0 + var reSharingEnded int32 + for { + select { + case err := <-errCh: + common.Logger.Errorf("Error: %s", err) + assert.FailNow(t, err.Error()) + return + + case msg := <-outCh: + dest := msg.GetTo() + if dest == nil { + t.Fatal("did not expect a msg to have a nil destination during resharing") + } + if msg.IsToOldCommittee() || msg.IsToOldAndNewCommittees() { + for _, destP := range dest[:len(oldCommittee)] { + go updater(oldCommittee[destP.Index], msg, errCh) + } + } + if !msg.IsToOldCommittee() || msg.IsToOldAndNewCommittees() { + for _, destP := range dest { + go updater(newCommittee[destP.Index], msg, errCh) + } + } + + case save := <-endCh: + // old committee members that aren't receiving a share have their Xi zeroed + if save.Xi != nil { + index, err := save.OriginalIndex() + assert.NoErrorf(t, err, "should not be an error getting a party's index from save data") + newKeys[index] = save + } else { + endedOldCommittee++ + } + atomic.AddInt32(&reSharingEnded, 1) + if atomic.LoadInt32(&reSharingEnded) == int32(len(oldCommittee)+len(newCommittee)) { + assert.Equal(t, len(oldCommittee), endedOldCommittee) + t.Logf("Resharing done. Reshared %d participants", reSharingEnded) + + // xj tests: BigXj == xj*G + for j, key := range newKeys { + // xj test: BigXj == xj*G + xj := key.Xi + gXj := crypto.ScalarBaseMult(tss.EC(), xj) + BigXj := key.BigXj[j] + assert.True(t, BigXj.Equals(gXj), "ensure BigX_j == g^x_j") + } + + // more verification of signing is implemented within local_party_test.go of keygen package + goto signing + } + } + } + +signing: + // PHASE: signing + signKeys, signPIDs := newKeys, newPIDs + signP2pCtx := tss.NewPeerContext(signPIDs) + signParties := make([]*signing.LocalParty, 0, len(signPIDs)) + + signErrCh := make(chan *tss.Error, len(signPIDs)) + signOutCh := make(chan tss.Message, len(signPIDs)) + signEndCh := make(chan common.SignatureData, len(signPIDs)) + + for j, signPID := range signPIDs { + params := tss.NewParameters(signP2pCtx, signPID, len(signPIDs), newThreshold) + P := signing.NewLocalParty(big.NewInt(42), params, signKeys[j], signOutCh, signEndCh).(*signing.LocalParty) + signParties = append(signParties, P) + go func(P *signing.LocalParty) { + if err := P.Start(); err != nil { + signErrCh <- err + } + }(P) + } + + var signEnded int32 + for { + select { + case err := <-signErrCh: + common.Logger.Errorf("Error: %s", err) + assert.FailNow(t, err.Error()) + return + + case msg := <-signOutCh: + dest := msg.GetTo() + if dest == nil { + for _, P := range signParties { + if P.PartyID().Index == msg.GetFrom().Index { + continue + } + go updater(P, msg, signErrCh) + } + } else { + if dest[0].Index == msg.GetFrom().Index { + t.Fatalf("party %d tried to send a message to itself (%d)", dest[0].Index, msg.GetFrom().Index) + } + go updater(signParties[dest[0].Index], msg, signErrCh) + } + + case signData := <-signEndCh: + atomic.AddInt32(&signEnded, 1) + if atomic.LoadInt32(&signEnded) == int32(len(signPIDs)) { + t.Logf("Signing done. Received sign data from %d participants", signEnded) + + // BEGIN EDDSA verify + pkX, pkY := signKeys[0].EDDSAPub.X(), signKeys[0].EDDSAPub.Y() + pk := edwards.PublicKey{ + Curve: tss.EC(), + X: pkX, + Y: pkY, + } + + newSig, err := edwards.ParseSignature(signData.Signature) + if err != nil { + println("new sig error, ", err.Error()) + } + + ok := edwards.Verify(&pk, big.NewInt(42).Bytes(), + newSig.R, newSig.S) + + assert.True(t, ok, "eddsa verify must pass") + t.Log("EDDSA signing test done.") + // END EDDSA verify + + return + } + } + } +} diff --git a/eddsa/resharing/messages.go b/eddsa/resharing/messages.go new file mode 100644 index 00000000..6d8e3985 --- /dev/null +++ b/eddsa/resharing/messages.go @@ -0,0 +1,177 @@ +// Copyright © 2019 Binance +// +// This file is part of Binance. The full Binance copyright notice, including +// terms governing use, modification, and redistribution, is contained in the +// file LICENSE at the root of the source code distribution tree. + +package resharing + +import ( + "math/big" + + "github.com/golang/protobuf/proto" + + "github.com/binance-chain/tss-lib/common" + "github.com/binance-chain/tss-lib/crypto" + cmt "github.com/binance-chain/tss-lib/crypto/commitments" + "github.com/binance-chain/tss-lib/crypto/vss" + "github.com/binance-chain/tss-lib/tss" +) + +// These messages were generated from Protocol Buffers definitions into eddsa-resharing.pb.go + +var ( + // Ensure that signing messages implement ValidateBasic + _ = []tss.MessageContent{ + (*DGRound1Message)(nil), + (*DGRound2Message)(nil), + (*DGRound3Message1)(nil), + (*DGRound3Message2)(nil), + } +) + +func init() { + proto.RegisterType((*DGRound1Message)(nil), tss.EDDSAProtoNamePrefix+"resharing.DGRound1Message") + proto.RegisterType((*DGRound2Message)(nil), tss.EDDSAProtoNamePrefix+"resharing.DGRound2Message") + proto.RegisterType((*DGRound3Message1)(nil), tss.EDDSAProtoNamePrefix+"resharing.DGRound3Message1") + proto.RegisterType((*DGRound3Message2)(nil), tss.EDDSAProtoNamePrefix+"resharing.DGRound3Message2") +} + +// ----- // + +func NewDGRound1Message( + to []*tss.PartyID, + from *tss.PartyID, + eddsaPub *crypto.ECPoint, + vct cmt.HashCommitment, +) tss.ParsedMessage { + meta := tss.MessageRouting{ + From: from, + To: to, + IsBroadcast: true, + IsToOldCommittee: false, + } + content := &DGRound1Message{ + EddsaPubX: eddsaPub.X().Bytes(), + EddsaPubY: eddsaPub.Y().Bytes(), + VCommitment: vct.Bytes(), + } + msg := tss.NewMessageWrapper(meta, content) + return tss.NewMessage(meta, content, msg) +} + +func (m *DGRound1Message) ValidateBasic() bool { + return m != nil && + common.NonEmptyBytes(m.EddsaPubX) && + common.NonEmptyBytes(m.EddsaPubY) && + common.NonEmptyBytes(m.VCommitment) +} + +func (m *DGRound1Message) UnmarshalEDDSAPub() (*crypto.ECPoint, error) { + return crypto.NewECPoint( + tss.EC(), + new(big.Int).SetBytes(m.EddsaPubX), + new(big.Int).SetBytes(m.EddsaPubY)) +} + +func (m *DGRound1Message) UnmarshalVCommitment() *big.Int { + return new(big.Int).SetBytes(m.GetVCommitment()) +} + +// ----- // + +func NewDGRound2Message( + to []*tss.PartyID, + from *tss.PartyID, +) tss.ParsedMessage { + meta := tss.MessageRouting{ + From: from, + To: to, + IsBroadcast: true, + IsToOldCommittee: true, + } + content := &DGRound2Message{} + msg := tss.NewMessageWrapper(meta, content) + return tss.NewMessage(meta, content, msg) +} + +func (m *DGRound2Message) ValidateBasic() bool { + return true +} + +// ----- // + +func NewDGRound3Message1( + to *tss.PartyID, + from *tss.PartyID, + share *vss.Share, +) tss.ParsedMessage { + meta := tss.MessageRouting{ + From: from, + To: []*tss.PartyID{to}, + IsBroadcast: false, + IsToOldCommittee: false, + } + content := &DGRound3Message1{ + Share: share.Share.Bytes(), + } + msg := tss.NewMessageWrapper(meta, content) + return tss.NewMessage(meta, content, msg) +} + +func (m *DGRound3Message1) ValidateBasic() bool { + return m != nil && + common.NonEmptyBytes(m.Share) +} + +// ----- // + +func NewDGRound3Message2( + to []*tss.PartyID, + from *tss.PartyID, + vdct cmt.HashDeCommitment, +) tss.ParsedMessage { + meta := tss.MessageRouting{ + From: from, + To: to, + IsBroadcast: true, + IsToOldCommittee: false, + } + vDctBzs := common.BigIntsToBytes(vdct) + content := &DGRound3Message2{ + VDecommitment: vDctBzs, + } + msg := tss.NewMessageWrapper(meta, content) + return tss.NewMessage(meta, content, msg) +} + +func (m *DGRound3Message2) ValidateBasic() bool { + return m != nil && + common.NonEmptyMultiBytes(m.VDecommitment) +} + +func (m *DGRound3Message2) UnmarshalVDeCommitment() cmt.HashDeCommitment { + deComBzs := m.GetVDecommitment() + return cmt.NewHashDeCommitmentFromBytes(deComBzs) +} + +// ----- // + +func NewDGRound4Message( + to []*tss.PartyID, + from *tss.PartyID, +) tss.ParsedMessage { + meta := tss.MessageRouting{ + From: from, + To: to, + IsBroadcast: true, + IsToOldAndNewCommittees: true, + } + content := &DGRound4Message{} + msg := tss.NewMessageWrapper(meta, content) + return tss.NewMessage(meta, content, msg) +} + +func (m *DGRound4Message) ValidateBasic() bool { + return true +} diff --git a/eddsa/resharing/round_1_old_step_1.go b/eddsa/resharing/round_1_old_step_1.go new file mode 100644 index 00000000..d8a6f2db --- /dev/null +++ b/eddsa/resharing/round_1_old_step_1.go @@ -0,0 +1,117 @@ +// Copyright © 2019 Binance +// +// This file is part of Binance. The full Binance copyright notice, including +// terms governing use, modification, and redistribution, is contained in the +// file LICENSE at the root of the source code distribution tree. + +package resharing + +import ( + "errors" + + "github.com/binance-chain/tss-lib/crypto" + "github.com/binance-chain/tss-lib/crypto/commitments" + "github.com/binance-chain/tss-lib/crypto/vss" + "github.com/binance-chain/tss-lib/eddsa/keygen" + "github.com/binance-chain/tss-lib/eddsa/signing" + "github.com/binance-chain/tss-lib/tss" +) + +// round 1 represents round 1 of the keygen part of the EDDSA TSS spec +func newRound1(params *tss.ReSharingParameters, input, save *keygen.LocalPartySaveData, temp *localTempData, out chan<- tss.Message, end chan<- keygen.LocalPartySaveData) tss.Round { + return &round1{ + &base{params, temp, input, save, out, end, make([]bool, params.Threshold()+1), make([]bool, len(params.NewParties().IDs())), false, 1}} +} + +func (round *round1) Start() *tss.Error { + if round.started { + return round.WrapError(errors.New("round already started")) + } + round.number = 1 + round.started = true + round.resetOK() // resets both round.oldOK and round.newOK + round.allNewOK() + + if !round.ReSharingParams().IsOldCommittee() { + return nil + } + round.allOldOK() + + Pi := round.PartyID() + i := Pi.Index + + // 1. PrepareForSigning() -> w_i + xi, ks := round.input.Xi, round.input.Ks + newKs := round.NewParties().IDs().Keys() + wi := signing.PrepareForSigning(i, round.Threshold()+1, xi, ks) + + // 2. + vi, shares, err := vss.Create(round.NewThreshold(), wi, newKs) + if err != nil { + return round.WrapError(err, round.PartyID()) + } + + // 3. + flatVis, err := crypto.FlattenECPoints(vi) + if err != nil { + return round.WrapError(err, round.PartyID()) + } + vCmt := commitments.NewHashCommitment(flatVis...) + + // 4. populate temp data + round.temp.VD = vCmt.D + round.temp.NewShares = shares + + // 5. "broadcast" C_i to members of the NEW committee + r1msg := NewDGRound1Message( + round.NewParties().IDs().Exclude(round.PartyID()), round.PartyID(), + round.input.EDDSAPub, vCmt.C) + round.temp.dgRound1Messages[i] = r1msg + round.out <- r1msg + + return nil +} + +func (round *round1) CanAccept(msg tss.ParsedMessage) bool { + // accept messages from old -> new committee + if _, ok := msg.Content().(*DGRound1Message); ok { + return msg.IsBroadcast() + } + return false +} + +func (round *round1) Update() (bool, *tss.Error) { + // only the new committee receive in this round + if !round.ReSharingParameters.IsNewCommittee() { + return true, nil + } + // accept messages from old -> new committee + for j, msg := range round.temp.dgRound1Messages { + if round.oldOK[j] { + continue + } + if msg == nil || !round.CanAccept(msg) { + return false, nil + } + round.oldOK[j] = true + + // save the eddsa pub received from the old committee + r1msg := round.temp.dgRound1Messages[0].Content().(*DGRound1Message) + candidate, err := r1msg.UnmarshalEDDSAPub() + if err != nil { + return false, round.WrapError(errors.New("unable to unmarshal the eddsa pub key"), msg.GetFrom()) + } + if round.save.EDDSAPub != nil && + !candidate.Equals(round.save.EDDSAPub) { + // uh oh - anomaly! + return false, round.WrapError(errors.New("eddsa pub key did not match what we received previously"), msg.GetFrom()) + } + round.save.EDDSAPub = candidate + } + return true, nil +} + +func (round *round1) NextRound() tss.Round { + round.started = false + return &round2{round} +} diff --git a/eddsa/resharing/round_2_new_step_1.go b/eddsa/resharing/round_2_new_step_1.go new file mode 100644 index 00000000..c323bfb0 --- /dev/null +++ b/eddsa/resharing/round_2_new_step_1.go @@ -0,0 +1,70 @@ +// Copyright © 2019 Binance +// +// This file is part of Binance. The full Binance copyright notice, including +// terms governing use, modification, and redistribution, is contained in the +// file LICENSE at the root of the source code distribution tree. + +package resharing + +import ( + "errors" + + "github.com/binance-chain/tss-lib/tss" +) + +func (round *round2) Start() *tss.Error { + if round.started { + return round.WrapError(errors.New("round already started")) + } + round.number = 2 + round.started = true + round.resetOK() // resets both round.oldOK and round.newOK + round.allOldOK() + + if !round.ReSharingParams().IsNewCommittee() { + return nil + } + round.allNewOK() + + Pi := round.PartyID() + i := Pi.Index + + // 1. "broadcast" "ACK" members of the OLD committee + r2msg := NewDGRound2Message(round.OldParties().IDs(), Pi) + round.temp.dgRound2Messages[i] = r2msg + round.out <- r2msg + + return nil +} + +func (round *round2) CanAccept(msg tss.ParsedMessage) bool { + if _, ok := msg.Content().(*DGRound2Message); ok { + return msg.IsBroadcast() + } + return false +} + +func (round *round2) Update() (bool, *tss.Error) { + // only the old committee receive in this round + if !round.ReSharingParams().IsOldCommittee() { + return true, nil + } + + // accept messages from new -> old committee + for j, msg := range round.temp.dgRound2Messages { + if round.newOK[j] { + continue + } + if msg == nil || !round.CanAccept(msg) { + return false, nil + } + round.newOK[j] = true + } + + return true, nil +} + +func (round *round2) NextRound() tss.Round { + round.started = false + return &round3{round} +} diff --git a/eddsa/resharing/round_3_old_step_2.go b/eddsa/resharing/round_3_old_step_2.go new file mode 100644 index 00000000..f80fe466 --- /dev/null +++ b/eddsa/resharing/round_3_old_step_2.go @@ -0,0 +1,87 @@ +// Copyright © 2019 Binance +// +// This file is part of Binance. The full Binance copyright notice, including +// terms governing use, modification, and redistribution, is contained in the +// file LICENSE at the root of the source code distribution tree. + +package resharing + +import ( + "errors" + + "github.com/binance-chain/tss-lib/tss" +) + +func (round *round3) Start() *tss.Error { + if round.started { + return round.WrapError(errors.New("round already started")) + } + round.number = 3 + round.started = true + round.resetOK() // resets both round.oldOK and round.newOK + round.allNewOK() + + if !round.ReSharingParams().IsOldCommittee() { + return nil + } + round.allOldOK() + + Pi := round.PartyID() + i := Pi.Index + + // 1-2. send share to Pj from the new committee + for j, Pj := range round.NewParties().IDs() { + share := round.temp.NewShares[j] + r3msg1 := NewDGRound3Message1(Pj, round.PartyID(), share) + round.temp.dgRound3Message1s[i] = r3msg1 + round.out <- r3msg1 + } + + // 3. broadcast de-commitment to new committees + vDeCmt := round.temp.VD + r3msg2 := NewDGRound3Message2( + round.NewParties().IDs().Exclude(round.PartyID()), round.PartyID(), + vDeCmt) + round.temp.dgRound3Message2s[i] = r3msg2 + round.out <- r3msg2 + + return nil +} + +func (round *round3) CanAccept(msg tss.ParsedMessage) bool { + if _, ok := msg.Content().(*DGRound3Message1); ok { + return !msg.IsBroadcast() + } + if _, ok := msg.Content().(*DGRound3Message2); ok { + return msg.IsBroadcast() + } + return false +} + +func (round *round3) Update() (bool, *tss.Error) { + // only the new committee receive in this round + if !round.ReSharingParams().IsNewCommittee() { + return true, nil + } + + // accept messages from old -> new committee + for j, msg1 := range round.temp.dgRound3Message1s { + if round.oldOK[j] { + continue + } + if msg1 == nil || !round.CanAccept(msg1) { + return false, nil + } + msg2 := round.temp.dgRound3Message2s[j] + if msg2 == nil || !round.CanAccept(msg2) { + return false, nil + } + round.oldOK[j] = true + } + return true, nil +} + +func (round *round3) NextRound() tss.Round { + round.started = false + return &round4{round} +} diff --git a/eddsa/resharing/round_4_new_step_2.go b/eddsa/resharing/round_4_new_step_2.go new file mode 100644 index 00000000..cd322203 --- /dev/null +++ b/eddsa/resharing/round_4_new_step_2.go @@ -0,0 +1,154 @@ +// Copyright © 2019 Binance +// +// This file is part of Binance. The full Binance copyright notice, including +// terms governing use, modification, and redistribution, is contained in the +// file LICENSE at the root of the source code distribution tree. + +package resharing + +import ( + "math/big" + + "github.com/pkg/errors" + + "github.com/binance-chain/tss-lib/common" + "github.com/binance-chain/tss-lib/crypto" + "github.com/binance-chain/tss-lib/crypto/commitments" + "github.com/binance-chain/tss-lib/crypto/vss" + "github.com/binance-chain/tss-lib/tss" +) + +func (round *round4) Start() *tss.Error { + if round.started { + return round.WrapError(errors.New("round already started")) + } + round.number = 4 + round.started = true + round.resetOK() // resets both round.oldOK and round.newOK + + round.allOldOK() + + if !round.ReSharingParams().IsNewCommittee() { + // both committees proceed to round 5 after receiving "ACK" messages from the new committee + return nil + } + + Pi := round.PartyID() + i := Pi.Index + + // 1. + newXi := big.NewInt(0) + + // 2-8. + modQ := common.ModInt(tss.EC().Params().N) + vjc := make([][]*crypto.ECPoint, round.Threshold()+1) + for j := 0; j <= round.Threshold(); j++ { // P1..P_t+1. Ps are indexed from 0 here + r1msg := round.temp.dgRound1Messages[j].Content().(*DGRound1Message) + r3msg2 := round.temp.dgRound3Message2s[j].Content().(*DGRound3Message2) + + vCj, vDj := r1msg.UnmarshalVCommitment(), r3msg2.UnmarshalVDeCommitment() + + // 3. unpack flat "v" commitment content + vCmtDeCmt := commitments.HashCommitDecommit{C: vCj, D: vDj} + ok, flatVs := vCmtDeCmt.DeCommit() + if !ok || len(flatVs) != (round.NewThreshold()+1)*2 { // they're points so * 2 + // TODO collect culprits and return a list of them as per convention + return round.WrapError(errors.New("de-commitment of v_j0..v_jt failed"), round.Parties().IDs()[j]) + } + vj, err := crypto.UnFlattenECPoints(tss.EC(), flatVs) + if err != nil { + return round.WrapError(err, round.Parties().IDs()[j]) + } + vjc[j] = vj + + r3msg1 := round.temp.dgRound3Message1s[j].Content().(*DGRound3Message1) + sharej := &vss.Share{ + Threshold: round.NewThreshold(), + ID: round.PartyID().KeyInt(), + Share: new(big.Int).SetBytes(r3msg1.Share), + } + if ok := sharej.Verify(round.NewThreshold(), vj); !ok { + return round.WrapError(errors.New("share from old committee did not pass Verify()"), round.Parties().IDs()[j]) + } + + newXi = new(big.Int).Add(newXi, sharej.Share) + } + + // 9-12. + var err error + Vc := make([]*crypto.ECPoint, round.NewThreshold()+1) + for c := 0; c <= round.NewThreshold(); c++ { + Vc[c] = vjc[0][c] + for j := 1; j <= round.Threshold(); j++ { + Vc[c], err = Vc[c].Add(vjc[j][c]) + if err != nil { + return round.WrapError(errors.Wrapf(err, "Vc[c].Add(vjc[j][c])")) + } + } + } + + // 13-15. + if !Vc[0].Equals(round.save.EDDSAPub) { + return round.WrapError(errors.New("assertion failed: V_0 != y"), round.PartyID()) + } + + // 16-20. + newKs := make([]*big.Int, 0, round.NewPartyCount()) + newBigXjs := make([]*crypto.ECPoint, round.NewPartyCount()) + culprits := make([]*tss.PartyID, 0, round.NewPartyCount()) // who caused the error(s) + for j := 0; j < round.NewPartyCount(); j++ { + Pj := round.NewParties().IDs()[j] + kj := Pj.KeyInt() + newBigXj := Vc[0] + newKs = append(newKs, kj) + z := new(big.Int).SetInt64(int64(1)) + for c := 1; c <= round.NewThreshold(); c++ { + z = modQ.Mul(z, kj) + newBigXj, err = newBigXj.Add(Vc[c].ScalarMult(z)) + if err != nil { + culprits = append(culprits, Pj) + } + } + newBigXjs[j] = newBigXj + } + if len(culprits) > 0 { + return round.WrapError(errors.Wrapf(err, "newBigXj.Add(Vc[c].ScalarMult(z))"), culprits...) + } + + round.temp.newXi = newXi + round.temp.newKs = newKs + round.temp.newBigXjs = newBigXjs + + // 21. Send an "ACK" message to both committees to signal that we're ready to save our data + r4msg := NewDGRound4Message(round.OldAndNewParties(), Pi) + round.temp.dgRound4Messages[i] = r4msg + round.out <- r4msg + + return nil +} + +func (round *round4) CanAccept(msg tss.ParsedMessage) bool { + if _, ok := msg.Content().(*DGRound4Message); ok { + return msg.IsBroadcast() + } + return false +} + +func (round *round4) Update() (bool, *tss.Error) { + // accept messages from new -> old&new committees + for j, msg := range round.temp.dgRound4Messages { + if round.newOK[j] { + continue + } + if msg == nil || !round.CanAccept(msg) { + return false, nil + } + round.newOK[j] = true + } + return true, nil +} + +func (round *round4) NextRound() tss.Round { + round.started = false + return &round5{round} +} diff --git a/eddsa/resharing/round_5_new_step_3.go b/eddsa/resharing/round_5_new_step_3.go new file mode 100644 index 00000000..44b335c7 --- /dev/null +++ b/eddsa/resharing/round_5_new_step_3.go @@ -0,0 +1,50 @@ +// Copyright © 2019 Binance +// +// This file is part of Binance. The full Binance copyright notice, including +// terms governing use, modification, and redistribution, is contained in the +// file LICENSE at the root of the source code distribution tree. + +package resharing + +import ( + "errors" + + "github.com/binance-chain/tss-lib/tss" +) + +func (round *round5) Start() *tss.Error { + if round.started { + return round.WrapError(errors.New("round already started")) + } + round.number = 5 + round.started = true + + round.allOldOK() + round.allNewOK() + + if round.IsNewCommittee() { + // for this P: SAVE data + round.save.BigXj = round.temp.newBigXjs + round.save.ShareID = round.PartyID().KeyInt() + round.save.Xi = round.temp.newXi + round.save.Ks = round.temp.newKs + + } else if round.IsOldCommittee() { + round.input.Xi.SetInt64(0) + } + + round.end <- *round.save + return nil +} + +func (round *round5) CanAccept(msg tss.ParsedMessage) bool { + return false +} + +func (round *round5) Update() (bool, *tss.Error) { + return false, nil +} + +func (round *round5) NextRound() tss.Round { + return nil // both committees are finished! +} diff --git a/eddsa/resharing/rounds.go b/eddsa/resharing/rounds.go new file mode 100644 index 00000000..67a1a3f2 --- /dev/null +++ b/eddsa/resharing/rounds.go @@ -0,0 +1,135 @@ +// Copyright © 2019 Binance +// +// This file is part of Binance. The full Binance copyright notice, including +// terms governing use, modification, and redistribution, is contained in the +// file LICENSE at the root of the source code distribution tree. + +package resharing + +import ( + "github.com/binance-chain/tss-lib/eddsa/keygen" + "github.com/binance-chain/tss-lib/tss" +) + +const ( + TaskName = "eddsa-resharing" +) + +type ( + base struct { + *tss.ReSharingParameters + temp *localTempData + input, save *keygen.LocalPartySaveData + out chan<- tss.Message + end chan<- keygen.LocalPartySaveData + oldOK, // old committee "ok" tracker + newOK []bool // `ok` tracks parties which have been verified by Update(); this one is for the new committee + started bool + number int + } + round1 struct { + *base + } + round2 struct { + *round1 + } + round3 struct { + *round2 + } + round4 struct { + *round3 + } + round5 struct { + *round4 + } +) + +var ( + _ tss.Round = (*round1)(nil) + _ tss.Round = (*round2)(nil) + _ tss.Round = (*round3)(nil) + _ tss.Round = (*round4)(nil) + _ tss.Round = (*round5)(nil) +) + +// ----- // + +func (round *base) Params() *tss.Parameters { + return round.ReSharingParameters.Parameters +} + +func (round *base) ReSharingParams() *tss.ReSharingParameters { + return round.ReSharingParameters +} + +func (round *base) RoundNumber() int { + return round.number +} + +// CanProceed is inherited by other rounds +func (round *base) CanProceed() bool { + if !round.started { + return false + } + for _, ok := range append(round.oldOK, round.newOK...) { + if !ok { + return false + } + } + return true +} + +// WaitingFor is called by a Party for reporting back to the caller +func (round *base) WaitingFor() []*tss.PartyID { + oldPs := round.OldParties().IDs() + newPs := round.NewParties().IDs() + idsMap := make(map[*tss.PartyID]bool) + ids := make([]*tss.PartyID, 0, len(round.oldOK)) + for j, ok := range round.oldOK { + if ok { + continue + } + idsMap[oldPs[j]] = true + } + for j, ok := range round.newOK { + if ok { + continue + } + idsMap[newPs[j]] = true + } + // consolidate into the list + for id := range idsMap { + ids = append(ids, id) + } + return ids +} + +func (round *base) WrapError(err error, culprits ...*tss.PartyID) *tss.Error { + return tss.NewError(err, TaskName, round.number, round.PartyID(), culprits...) +} + +// ----- // + +// `oldOK` tracks parties which have been verified by Update() +func (round *base) resetOK() { + for j := range round.oldOK { + round.oldOK[j] = false + } + for j := range round.newOK { + round.newOK[j] = false + } +} + +// sets all pairings in `oldOK` to true +func (round *base) allOldOK() { + for j := range round.oldOK { + round.oldOK[j] = true + } +} + +// sets all pairings in `newOK` to true +func (round *base) allNewOK() { + for j := range round.newOK { + round.newOK[j] = true + } +} diff --git a/eddsa/signing/eddsa-signing.pb.go b/eddsa/signing/eddsa-signing.pb.go new file mode 100644 index 00000000..62a772a8 --- /dev/null +++ b/eddsa/signing/eddsa-signing.pb.go @@ -0,0 +1,193 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// source: eddsa-signing.proto + +package signing + +import ( + fmt "fmt" + proto "github.com/golang/protobuf/proto" + math "math" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package + +// +// Represents a BROADCAST message sent to all parties during Round 1 of the EDDSA TSS signing protocol. +type SignRound1Message struct { + Commitment []byte `protobuf:"bytes,1,opt,name=commitment,proto3" json:"commitment,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *SignRound1Message) Reset() { *m = SignRound1Message{} } +func (m *SignRound1Message) String() string { return proto.CompactTextString(m) } +func (*SignRound1Message) ProtoMessage() {} +func (*SignRound1Message) Descriptor() ([]byte, []int) { + return fileDescriptor_cf83f80fc7454980, []int{0} +} + +func (m *SignRound1Message) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SignRound1Message.Unmarshal(m, b) +} +func (m *SignRound1Message) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SignRound1Message.Marshal(b, m, deterministic) +} +func (m *SignRound1Message) XXX_Merge(src proto.Message) { + xxx_messageInfo_SignRound1Message.Merge(m, src) +} +func (m *SignRound1Message) XXX_Size() int { + return xxx_messageInfo_SignRound1Message.Size(m) +} +func (m *SignRound1Message) XXX_DiscardUnknown() { + xxx_messageInfo_SignRound1Message.DiscardUnknown(m) +} + +var xxx_messageInfo_SignRound1Message proto.InternalMessageInfo + +func (m *SignRound1Message) GetCommitment() []byte { + if m != nil { + return m.Commitment + } + return nil +} + +// +// Represents a BROADCAST message sent to all parties during Round 2 of the EDDSA TSS signing protocol. +type SignRound2Message struct { + DeCommitment [][]byte `protobuf:"bytes,1,rep,name=de_commitment,json=deCommitment,proto3" json:"de_commitment,omitempty"` + ProofAlphaX []byte `protobuf:"bytes,2,opt,name=proof_alpha_x,json=proofAlphaX,proto3" json:"proof_alpha_x,omitempty"` + ProofAlphaY []byte `protobuf:"bytes,3,opt,name=proof_alpha_y,json=proofAlphaY,proto3" json:"proof_alpha_y,omitempty"` + ProofT []byte `protobuf:"bytes,4,opt,name=proof_t,json=proofT,proto3" json:"proof_t,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *SignRound2Message) Reset() { *m = SignRound2Message{} } +func (m *SignRound2Message) String() string { return proto.CompactTextString(m) } +func (*SignRound2Message) ProtoMessage() {} +func (*SignRound2Message) Descriptor() ([]byte, []int) { + return fileDescriptor_cf83f80fc7454980, []int{1} +} + +func (m *SignRound2Message) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SignRound2Message.Unmarshal(m, b) +} +func (m *SignRound2Message) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SignRound2Message.Marshal(b, m, deterministic) +} +func (m *SignRound2Message) XXX_Merge(src proto.Message) { + xxx_messageInfo_SignRound2Message.Merge(m, src) +} +func (m *SignRound2Message) XXX_Size() int { + return xxx_messageInfo_SignRound2Message.Size(m) +} +func (m *SignRound2Message) XXX_DiscardUnknown() { + xxx_messageInfo_SignRound2Message.DiscardUnknown(m) +} + +var xxx_messageInfo_SignRound2Message proto.InternalMessageInfo + +func (m *SignRound2Message) GetDeCommitment() [][]byte { + if m != nil { + return m.DeCommitment + } + return nil +} + +func (m *SignRound2Message) GetProofAlphaX() []byte { + if m != nil { + return m.ProofAlphaX + } + return nil +} + +func (m *SignRound2Message) GetProofAlphaY() []byte { + if m != nil { + return m.ProofAlphaY + } + return nil +} + +func (m *SignRound2Message) GetProofT() []byte { + if m != nil { + return m.ProofT + } + return nil +} + +// +// Represents a BROADCAST message sent to all parties during Round 3 of the EDDSA TSS signing protocol. +type SignRound3Message struct { + S []byte `protobuf:"bytes,1,opt,name=s,proto3" json:"s,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *SignRound3Message) Reset() { *m = SignRound3Message{} } +func (m *SignRound3Message) String() string { return proto.CompactTextString(m) } +func (*SignRound3Message) ProtoMessage() {} +func (*SignRound3Message) Descriptor() ([]byte, []int) { + return fileDescriptor_cf83f80fc7454980, []int{2} +} + +func (m *SignRound3Message) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SignRound3Message.Unmarshal(m, b) +} +func (m *SignRound3Message) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SignRound3Message.Marshal(b, m, deterministic) +} +func (m *SignRound3Message) XXX_Merge(src proto.Message) { + xxx_messageInfo_SignRound3Message.Merge(m, src) +} +func (m *SignRound3Message) XXX_Size() int { + return xxx_messageInfo_SignRound3Message.Size(m) +} +func (m *SignRound3Message) XXX_DiscardUnknown() { + xxx_messageInfo_SignRound3Message.DiscardUnknown(m) +} + +var xxx_messageInfo_SignRound3Message proto.InternalMessageInfo + +func (m *SignRound3Message) GetS() []byte { + if m != nil { + return m.S + } + return nil +} + +func init() { + proto.RegisterType((*SignRound1Message)(nil), "SignRound1Message") + proto.RegisterType((*SignRound2Message)(nil), "SignRound2Message") + proto.RegisterType((*SignRound3Message)(nil), "SignRound3Message") +} + +func init() { proto.RegisterFile("eddsa-signing.proto", fileDescriptor_cf83f80fc7454980) } + +var fileDescriptor_cf83f80fc7454980 = []byte{ + // 197 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x12, 0x4e, 0x4d, 0x49, 0x29, + 0x4e, 0xd4, 0x2d, 0xce, 0x4c, 0xcf, 0xcb, 0xcc, 0x4b, 0xd7, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x57, + 0x32, 0xe6, 0x12, 0x0c, 0xce, 0x4c, 0xcf, 0x0b, 0xca, 0x2f, 0xcd, 0x4b, 0x31, 0xf4, 0x4d, 0x2d, + 0x2e, 0x4e, 0x4c, 0x4f, 0x15, 0x92, 0xe3, 0xe2, 0x4a, 0xce, 0xcf, 0xcd, 0xcd, 0x2c, 0xc9, 0x4d, + 0xcd, 0x2b, 0x91, 0x60, 0x54, 0x60, 0xd4, 0xe0, 0x09, 0x42, 0x12, 0x51, 0x9a, 0xc9, 0x88, 0xa4, + 0xcb, 0x08, 0xa6, 0x4b, 0x99, 0x8b, 0x37, 0x25, 0x35, 0x1e, 0x45, 0x23, 0xb3, 0x06, 0x4f, 0x10, + 0x4f, 0x4a, 0xaa, 0x33, 0x5c, 0x4c, 0x48, 0x89, 0x8b, 0xb7, 0xa0, 0x28, 0x3f, 0x3f, 0x2d, 0x3e, + 0x31, 0xa7, 0x20, 0x23, 0x31, 0xbe, 0x42, 0x82, 0x09, 0x6c, 0x3a, 0x37, 0x58, 0xd0, 0x11, 0x24, + 0x16, 0x81, 0xae, 0xa6, 0x52, 0x82, 0x19, 0x5d, 0x4d, 0xa4, 0x90, 0x38, 0x17, 0x3b, 0x44, 0x4d, + 0x89, 0x04, 0x0b, 0x58, 0x96, 0x0d, 0xcc, 0x0d, 0x51, 0x52, 0x44, 0x72, 0x9a, 0x31, 0xcc, 0x69, + 0x3c, 0x5c, 0x8c, 0xc5, 0x50, 0x7f, 0x30, 0x16, 0x3b, 0xf1, 0x47, 0xf1, 0x82, 0x83, 0x42, 0x1f, + 0x1a, 0x14, 0x49, 0x6c, 0xe0, 0xb0, 0x30, 0x06, 0x04, 0x00, 0x00, 0xff, 0xff, 0x0a, 0x36, 0x85, + 0xc1, 0x22, 0x01, 0x00, 0x00, +} diff --git a/eddsa/signing/finalize.go b/eddsa/signing/finalize.go new file mode 100644 index 00000000..7313580a --- /dev/null +++ b/eddsa/signing/finalize.go @@ -0,0 +1,75 @@ +// Copyright © 2019 Binance +// +// This file is part of Binance. The full Binance copyright notice, including +// terms governing use, modification, and redistribution, is contained in the +// file LICENSE at the root of the source code distribution tree. + +package signing + +import ( + "errors" + "fmt" + "math/big" + + "github.com/agl/ed25519/edwards25519" + "github.com/decred/dcrd/dcrec/edwards/v2" + + "github.com/binance-chain/tss-lib/tss" +) + +func (round *finalization) Start() *tss.Error { + if round.started { + return round.WrapError(errors.New("round already started")) + } + round.number = 4 + round.started = true + round.resetOK() + + sumS := round.temp.si + for j := range round.Parties().IDs() { + round.ok[j] = true + if j == round.PartyID().Index { + continue + } + r3msg := round.temp.signRound3Messages[j].Content().(*SignRound3Message) + sjBytes := bigIntToEncodedBytes(r3msg.UnmarshalS()) + var tmpSumS [32]byte + edwards25519.ScMulAdd(&tmpSumS, sumS, bigIntToEncodedBytes(big.NewInt(1)), sjBytes) + sumS = &tmpSumS + } + + // save the signature for final output + round.data.Signature = append(bigIntToEncodedBytes(round.temp.r)[:], sumS[:]...) + round.data.R = round.temp.r.Bytes() + round.data.S = sumS[:] + round.data.M = round.temp.m.Bytes() + + pk := edwards.PublicKey{ + Curve: tss.EC(), + X: round.key.EDDSAPub.X(), + Y: round.key.EDDSAPub.Y(), + } + s := encodedBytesToBigInt(sumS) + + ok := edwards.Verify(&pk, round.temp.m.Bytes(), round.temp.r, s) + if !ok { + return round.WrapError(fmt.Errorf("signature verification failed")) + } + round.end <- *round.data + + return nil +} + +func (round *finalization) CanAccept(msg tss.ParsedMessage) bool { + // not expecting any incoming messages in this round + return false +} + +func (round *finalization) Update() (bool, *tss.Error) { + // not expecting any incoming messages in this round + return false, nil +} + +func (round *finalization) NextRound() tss.Round { + return nil // finished! +} diff --git a/eddsa/signing/local_party.go b/eddsa/signing/local_party.go new file mode 100644 index 00000000..ba554284 --- /dev/null +++ b/eddsa/signing/local_party.go @@ -0,0 +1,154 @@ +// Copyright © 2019 Binance +// +// This file is part of Binance. The full Binance copyright notice, including +// terms governing use, modification, and redistribution, is contained in the +// file LICENSE at the root of the source code distribution tree. + +package signing + +import ( + "errors" + "fmt" + "math/big" + + "github.com/binance-chain/tss-lib/common" + "github.com/binance-chain/tss-lib/crypto" + cmt "github.com/binance-chain/tss-lib/crypto/commitments" + "github.com/binance-chain/tss-lib/eddsa/keygen" + "github.com/binance-chain/tss-lib/tss" +) + +// Implements Party +// Implements Stringer +var _ tss.Party = (*LocalParty)(nil) +var _ fmt.Stringer = (*LocalParty)(nil) + +type ( + LocalParty struct { + *tss.BaseParty + params *tss.Parameters + + keys keygen.LocalPartySaveData + temp localTempData + data common.SignatureData + + // outbound messaging + out chan<- tss.Message + end chan<- common.SignatureData + } + + localMessageStore struct { + signRound1Messages, + signRound2Messages, + signRound3Messages []tss.ParsedMessage + } + + localTempData struct { + localMessageStore + + // temp data (thrown away after sign) / round 1 + wi, + m, + ri *big.Int + pointRi *crypto.ECPoint + deCommit cmt.HashDeCommitment + + // round 2 + cjs []*big.Int + si *[32]byte + + // round 3 + r *big.Int + } +) + +func NewLocalParty( + msg *big.Int, + params *tss.Parameters, + key keygen.LocalPartySaveData, + out chan<- tss.Message, + end chan<- common.SignatureData, +) tss.Party { + partyCount := len(params.Parties().IDs()) + p := &LocalParty{ + BaseParty: new(tss.BaseParty), + params: params, + keys: keygen.BuildLocalSaveDataSubset(key, params.Parties().IDs()), + temp: localTempData{}, + data: common.SignatureData{}, + out: out, + end: end, + } + // msgs init + p.temp.signRound1Messages = make([]tss.ParsedMessage, partyCount) + p.temp.signRound2Messages = make([]tss.ParsedMessage, partyCount) + p.temp.signRound3Messages = make([]tss.ParsedMessage, partyCount) + + // temp data init + p.temp.m = msg + p.temp.cjs = make([]*big.Int, partyCount) + return p +} + +func (p *LocalParty) FirstRound() tss.Round { + return newRound1(p.params, &p.keys, &p.data, &p.temp, p.out, p.end) +} + +func (p *LocalParty) Start() *tss.Error { + return tss.BaseStart(p, TaskName, func(round tss.Round) *tss.Error { + round1, ok := round.(*round1) + if !ok { + return round.WrapError(errors.New("unable to Start(). party is in an unexpected round")) + } + if err := round1.prepare(); err != nil { + return round.WrapError(err) + } + return nil + }) +} + +func (p *LocalParty) Update(msg tss.ParsedMessage) (ok bool, err *tss.Error) { + return tss.BaseUpdate(p, msg, TaskName) +} + +func (p *LocalParty) UpdateFromBytes(wireBytes []byte, from *tss.PartyID, isBroadcast bool) (bool, *tss.Error) { + msg, err := tss.ParseWireMessage(wireBytes, from, isBroadcast) + if err != nil { + return false, p.WrapError(err) + } + return p.Update(msg) +} + +func (p *LocalParty) StoreMessage(msg tss.ParsedMessage) (bool, *tss.Error) { + // ValidateBasic is cheap; double-check the message here in case the public StoreMessage was called externally + if ok, err := p.ValidateMessage(msg); !ok || err != nil { + return ok, err + } + fromPIdx := msg.GetFrom().Index + + // switch/case is necessary to store any messages beyond current round + // this does not handle message replays. we expect the caller to apply replay and spoofing protection. + switch msg.Content().(type) { + case *SignRound1Message: + p.temp.signRound1Messages[fromPIdx] = msg + + case *SignRound2Message: + p.temp.signRound2Messages[fromPIdx] = msg + + case *SignRound3Message: + p.temp.signRound3Messages[fromPIdx] = msg + + default: // unrecognised message, just ignore! + common.Logger.Warningf("unrecognised message ignored: %v", msg) + return false, nil + } + return true, nil +} + +func (p *LocalParty) PartyID() *tss.PartyID { + return p.params.PartyID() +} + +func (p *LocalParty) String() string { + return fmt.Sprintf("id: %s, %s", p.PartyID(), p.BaseParty.String()) +} diff --git a/eddsa/signing/local_party_test.go b/eddsa/signing/local_party_test.go new file mode 100644 index 00000000..198ca3da --- /dev/null +++ b/eddsa/signing/local_party_test.go @@ -0,0 +1,143 @@ +// Copyright © 2019 Binance +// +// This file is part of Binance. The full Binance copyright notice, including +// terms governing use, modification, and redistribution, is contained in the +// file LICENSE at the root of the source code distribution tree. + +package signing + +import ( + "fmt" + "math/big" + "sync/atomic" + "testing" + + "github.com/agl/ed25519/edwards25519" + "github.com/decred/dcrd/dcrec/edwards/v2" + "github.com/ipfs/go-log" + "github.com/stretchr/testify/assert" + + "github.com/binance-chain/tss-lib/common" + "github.com/binance-chain/tss-lib/eddsa/keygen" + "github.com/binance-chain/tss-lib/test" + "github.com/binance-chain/tss-lib/tss" +) + +const ( + testParticipants = test.TestParticipants + testThreshold = test.TestThreshold +) + +func setUp(level string) { + if err := log.SetLogLevel("tss-lib", level); err != nil { + panic(err) + } +} + +func TestE2EConcurrent(t *testing.T) { + setUp("info") + + tss.SetCurve(edwards.Edwards()) + + threshold := testThreshold + + // PHASE: load keygen fixtures + keys, signPIDs, err := keygen.LoadKeygenTestFixturesRandomSet(testThreshold+1, testParticipants) + assert.NoError(t, err, "should load keygen fixtures") + assert.Equal(t, testThreshold+1, len(keys)) + assert.Equal(t, testThreshold+1, len(signPIDs)) + + // PHASE: signing + + p2pCtx := tss.NewPeerContext(signPIDs) + parties := make([]*LocalParty, 0, len(signPIDs)) + + errCh := make(chan *tss.Error, len(signPIDs)) + outCh := make(chan tss.Message, len(signPIDs)) + endCh := make(chan common.SignatureData, len(signPIDs)) + + updater := test.SharedPartyUpdater + + msg := big.NewInt(200) + // init the parties + for i := 0; i < len(signPIDs); i++ { + params := tss.NewParameters(p2pCtx, signPIDs[i], len(signPIDs), threshold) + + P := NewLocalParty(msg, params, keys[i], outCh, endCh).(*LocalParty) + parties = append(parties, P) + go func(P *LocalParty) { + if err := P.Start(); err != nil { + errCh <- err + } + }(P) + } + + var ended int32 +signing: + for { + select { + case err := <-errCh: + common.Logger.Errorf("Error: %s", err) + assert.FailNow(t, err.Error()) + break signing + + case msg := <-outCh: + dest := msg.GetTo() + if dest == nil { + for _, P := range parties { + if P.PartyID().Index == msg.GetFrom().Index { + continue + } + go updater(P, msg, errCh) + } + } else { + if dest[0].Index == msg.GetFrom().Index { + t.Fatalf("party %d tried to send a message to itself (%d)", dest[0].Index, msg.GetFrom().Index) + } + go updater(parties[dest[0].Index], msg, errCh) + } + + case <-endCh: + atomic.AddInt32(&ended, 1) + if atomic.LoadInt32(&ended) == int32(len(signPIDs)) { + t.Logf("Done. Received save data from %d participants", ended) + R := parties[0].temp.r + + // BEGIN check s correctness + sumS := parties[0].temp.si + for i, p := range parties { + if i == 0 { + continue + } + + var tmpSumS [32]byte + edwards25519.ScMulAdd(&tmpSumS, sumS, bigIntToEncodedBytes(big.NewInt(1)), p.temp.si) + sumS = &tmpSumS + } + fmt.Printf("S: %s\n", encodedBytesToBigInt(sumS).String()) + fmt.Printf("R: %s\n", R.String()) + // END check s correctness + + // BEGIN EDDSA verify + pkX, pkY := keys[0].EDDSAPub.X(), keys[0].EDDSAPub.Y() + pk := edwards.PublicKey{ + Curve: tss.EC(), + X: pkX, + Y: pkY, + } + + newSig, err := edwards.ParseSignature(parties[0].data.Signature) + if err != nil { + println("new sig error, ", err.Error()) + } + + ok := edwards.Verify(&pk, msg.Bytes(), newSig.R, newSig.S) + assert.True(t, ok, "eddsa verify must pass") + t.Log("EDDSA signing test done.") + // END EDDSA verify + + break signing + } + } + } +} diff --git a/eddsa/signing/messages.go b/eddsa/signing/messages.go new file mode 100644 index 00000000..4cf6070b --- /dev/null +++ b/eddsa/signing/messages.go @@ -0,0 +1,138 @@ +// Copyright © 2019 Binance +// +// This file is part of Binance. The full Binance copyright notice, including +// terms governing use, modification, and redistribution, is contained in the +// file LICENSE at the root of the source code distribution tree. + +package signing + +import ( + "math/big" + + "github.com/golang/protobuf/proto" + + "github.com/binance-chain/tss-lib/common" + "github.com/binance-chain/tss-lib/crypto" + cmt "github.com/binance-chain/tss-lib/crypto/commitments" + "github.com/binance-chain/tss-lib/crypto/schnorr" + "github.com/binance-chain/tss-lib/tss" +) + +// These messages were generated from Protocol Buffers definitions into eddsa-signing.pb.go +// The following messages are registered on the Protocol Buffers "wire" + +var ( + // Ensure that signing messages implement ValidateBasic + _ = []tss.MessageContent{ + (*SignRound1Message)(nil), + (*SignRound2Message)(nil), + (*SignRound3Message)(nil), + } +) + +func init() { + proto.RegisterType((*SignRound1Message)(nil), tss.EDDSAProtoNamePrefix+"signing.SignRound1Message") + proto.RegisterType((*SignRound2Message)(nil), tss.EDDSAProtoNamePrefix+"signing.SignRound2Message") + proto.RegisterType((*SignRound3Message)(nil), tss.EDDSAProtoNamePrefix+"signing.SignRound3Message") +} + +// ----- // + +func NewSignRound1Message( + from *tss.PartyID, + commitment cmt.HashCommitment, +) tss.ParsedMessage { + meta := tss.MessageRouting{ + From: from, + IsBroadcast: true, + } + content := &SignRound1Message{ + Commitment: commitment.Bytes(), + } + msg := tss.NewMessageWrapper(meta, content) + return tss.NewMessage(meta, content, msg) +} + +func (m *SignRound1Message) ValidateBasic() bool { + return m.Commitment != nil && + common.NonEmptyBytes(m.GetCommitment()) +} + +func (m *SignRound1Message) UnmarshalCommitment() *big.Int { + return new(big.Int).SetBytes(m.GetCommitment()) +} + +// ----- // + +func NewSignRound2Message( + from *tss.PartyID, + deCommitment cmt.HashDeCommitment, + proof *schnorr.ZKProof, +) tss.ParsedMessage { + meta := tss.MessageRouting{ + From: from, + IsBroadcast: true, + } + dcBzs := common.BigIntsToBytes(deCommitment) + content := &SignRound2Message{ + DeCommitment: dcBzs, + ProofAlphaX: proof.Alpha.X().Bytes(), + ProofAlphaY: proof.Alpha.Y().Bytes(), + ProofT: proof.T.Bytes(), + } + msg := tss.NewMessageWrapper(meta, content) + return tss.NewMessage(meta, content, msg) +} + +func (m *SignRound2Message) ValidateBasic() bool { + return m != nil && + common.NonEmptyMultiBytes(m.DeCommitment, 3) && + common.NonEmptyBytes(m.ProofAlphaX) && + common.NonEmptyBytes(m.ProofAlphaY) && + common.NonEmptyBytes(m.ProofT) +} + +func (m *SignRound2Message) UnmarshalDeCommitment() []*big.Int { + deComBzs := m.GetDeCommitment() + return cmt.NewHashDeCommitmentFromBytes(deComBzs) +} + +func (m *SignRound2Message) UnmarshalZKProof() (*schnorr.ZKProof, error) { + point, err := crypto.NewECPoint( + tss.EC(), + new(big.Int).SetBytes(m.GetProofAlphaX()), + new(big.Int).SetBytes(m.GetProofAlphaY())) + if err != nil { + return nil, err + } + return &schnorr.ZKProof{ + Alpha: point, + T: new(big.Int).SetBytes(m.GetProofT()), + }, nil +} + +// ----- // + +func NewSignRound3Message( + from *tss.PartyID, + si *big.Int, +) tss.ParsedMessage { + meta := tss.MessageRouting{ + From: from, + IsBroadcast: true, + } + content := &SignRound3Message{ + S: si.Bytes(), + } + msg := tss.NewMessageWrapper(meta, content) + return tss.NewMessage(meta, content, msg) +} + +func (m *SignRound3Message) ValidateBasic() bool { + return m != nil && + common.NonEmptyBytes(m.S) +} + +func (m *SignRound3Message) UnmarshalS() *big.Int { + return new(big.Int).SetBytes(m.S) +} diff --git a/eddsa/signing/prepare.go b/eddsa/signing/prepare.go new file mode 100644 index 00000000..4fbc8d32 --- /dev/null +++ b/eddsa/signing/prepare.go @@ -0,0 +1,36 @@ +// Copyright © 2019 Binance +// +// This file is part of Binance. The full Binance copyright notice, including +// terms governing use, modification, and redistribution, is contained in the +// file LICENSE at the root of the source code distribution tree. + +package signing + +import ( + "fmt" + "math/big" + + "github.com/binance-chain/tss-lib/common" + "github.com/binance-chain/tss-lib/tss" +) + +// PrepareForSigning(), Fig. 7 +func PrepareForSigning(i, pax int, xi *big.Int, ks []*big.Int) (wi *big.Int) { + modQ := common.ModInt(tss.EC().Params().N) + if len(ks) != pax { + panic(fmt.Errorf("indices is not in pax size")) + } + + // 1-4. + wi = xi + for j := 0; j < pax; j++ { + if j == i { + continue + } + // big.Int Div is calculated as: a/b = a * modInv(b,q) + coef := modQ.Mul(ks[j], modQ.ModInverse(new(big.Int).Sub(ks[j], ks[i]))) + wi = modQ.Mul(wi, coef) + } + + return +} diff --git a/eddsa/signing/round_1.go b/eddsa/signing/round_1.go new file mode 100644 index 00000000..a97f2291 --- /dev/null +++ b/eddsa/signing/round_1.go @@ -0,0 +1,105 @@ +// Copyright © 2019 Binance +// +// This file is part of Binance. The full Binance copyright notice, including +// terms governing use, modification, and redistribution, is contained in the +// file LICENSE at the root of the source code distribution tree. + +package signing + +import ( + "errors" + "fmt" + "math/big" + + "github.com/binance-chain/tss-lib/common" + "github.com/binance-chain/tss-lib/crypto" + "github.com/binance-chain/tss-lib/crypto/commitments" + "github.com/binance-chain/tss-lib/eddsa/keygen" + "github.com/binance-chain/tss-lib/tss" +) + +var ( + zero = big.NewInt(0) +) + +// round 1 represents round 1 of the signing part of the EDDSA TSS spec +func newRound1(params *tss.Parameters, key *keygen.LocalPartySaveData, data *common.SignatureData, temp *localTempData, out chan<- tss.Message, end chan<- common.SignatureData) tss.Round { + return &round1{ + &base{params, key, data, temp, out, end, make([]bool, len(params.Parties().IDs())), false, 1}} +} + +func (round *round1) Start() *tss.Error { + if round.started { + return round.WrapError(errors.New("round already started")) + } + + round.number = 1 + round.started = true + round.resetOK() + + // 1. select ri + ri := common.GetRandomPositiveInt(tss.EC().Params().N) + + // 2. make commitment + pointRi := crypto.ScalarBaseMult(tss.EC(), ri) + cmt := commitments.NewHashCommitment(pointRi.X(), pointRi.Y()) + + // 3. store r1 message pieces + round.temp.ri = ri + round.temp.pointRi = pointRi + round.temp.deCommit = cmt.D + + i := round.PartyID().Index + round.ok[i] = true + + // 4. broadcast commitment + r1msg2 := NewSignRound1Message(round.PartyID(), cmt.C) + round.temp.signRound1Messages[i] = r1msg2 + round.out <- r1msg2 + + return nil +} + +func (round *round1) Update() (bool, *tss.Error) { + for j, msg := range round.temp.signRound1Messages { + if round.ok[j] { + continue + } + if msg == nil || !round.CanAccept(msg) { + return false, nil + } + round.ok[j] = true + } + return true, nil +} + +func (round *round1) CanAccept(msg tss.ParsedMessage) bool { + if _, ok := msg.Content().(*SignRound1Message); ok { + return msg.IsBroadcast() + } + return false +} + +func (round *round1) NextRound() tss.Round { + round.started = false + return &round2{round} +} + +// ----- // + +// helper to call into PrepareForSigning() +func (round *round1) prepare() error { + i := round.PartyID().Index + + xi := round.key.Xi + ks := round.key.Ks + + if round.Threshold()+1 > len(ks) { + // TODO: this should not panic + return fmt.Errorf("t+1=%d is not consistent with the key count %d", round.Threshold()+1, len(ks)) + } + wi := PrepareForSigning(i, len(ks), xi, ks) + + round.temp.wi = wi + return nil +} diff --git a/eddsa/signing/round_2.go b/eddsa/signing/round_2.go new file mode 100644 index 00000000..6e2bf3c6 --- /dev/null +++ b/eddsa/signing/round_2.go @@ -0,0 +1,71 @@ +// Copyright © 2019 Binance +// +// This file is part of Binance. The full Binance copyright notice, including +// terms governing use, modification, and redistribution, is contained in the +// file LICENSE at the root of the source code distribution tree. + +package signing + +import ( + "errors" + + errors2 "github.com/pkg/errors" + + "github.com/binance-chain/tss-lib/crypto/schnorr" + "github.com/binance-chain/tss-lib/tss" +) + +func (round *round2) Start() *tss.Error { + if round.started { + return round.WrapError(errors.New("round already started")) + } + round.number = 2 + round.started = true + round.resetOK() + + i := round.PartyID().Index + + // 1. store r1 message pieces + for j, msg := range round.temp.signRound1Messages { + r1msg := msg.Content().(*SignRound1Message) + round.temp.cjs[j] = r1msg.UnmarshalCommitment() + } + + // 2. compute Schnorr prove + pir, err := schnorr.NewZKProof(round.temp.ri, round.temp.pointRi) + if err != nil { + return round.WrapError(errors2.Wrapf(err, "NewZKProof(ri, pointRi)")) + } + + // 3. BROADCAST de-commitments of Shamir poly*G and Schnorr prove + r2msg2 := NewSignRound2Message(round.PartyID(), round.temp.deCommit, pir) + round.temp.signRound2Messages[i] = r2msg2 + round.out <- r2msg2 + + return nil +} + +func (round *round2) CanAccept(msg tss.ParsedMessage) bool { + if _, ok := msg.Content().(*SignRound2Message); ok { + return msg.IsBroadcast() + } + return false +} + +func (round *round2) Update() (bool, *tss.Error) { + for j, msg := range round.temp.signRound2Messages { + if round.ok[j] { + continue + } + if msg == nil || !round.CanAccept(msg) { + return false, nil + } + round.ok[j] = true + } + return true, nil +} + +func (round *round2) NextRound() tss.Round { + round.started = false + return &round3{round} +} diff --git a/eddsa/signing/round_3.go b/eddsa/signing/round_3.go new file mode 100644 index 00000000..2fd822a4 --- /dev/null +++ b/eddsa/signing/round_3.go @@ -0,0 +1,125 @@ +// Copyright © 2019 Binance +// +// This file is part of Binance. The full Binance copyright notice, including +// terms governing use, modification, and redistribution, is contained in the +// file LICENSE at the root of the source code distribution tree. + +package signing + +import ( + "crypto/sha512" + + "github.com/agl/ed25519/edwards25519" + "github.com/pkg/errors" + + "github.com/binance-chain/tss-lib/crypto" + "github.com/binance-chain/tss-lib/crypto/commitments" + "github.com/binance-chain/tss-lib/tss" +) + +func (round *round3) Start() *tss.Error { + if round.started { + return round.WrapError(errors.New("round already started")) + } + + round.number = 3 + round.started = true + round.resetOK() + + // 1. init R + var R edwards25519.ExtendedGroupElement + riBytes := bigIntToEncodedBytes(round.temp.ri) + edwards25519.GeScalarMultBase(&R, riBytes) + + // 2-6. compute R + i := round.PartyID().Index + for j, Pj := range round.Parties().IDs() { + if j == i { + continue + } + + msg := round.temp.signRound2Messages[j] + r2msg := msg.Content().(*SignRound2Message) + cmtDeCmt := commitments.HashCommitDecommit{C: round.temp.cjs[j], D: r2msg.UnmarshalDeCommitment()} + ok, coordinates := cmtDeCmt.DeCommit() + if !ok { + return round.WrapError(errors.New("de-commitment verify failed")) + } + if len(coordinates) != 2 { + return round.WrapError(errors.New("length of de-commitment should be 2")) + } + + Rj, err := crypto.NewECPoint(tss.EC(), coordinates[0], coordinates[1]) + if err != nil { + return round.WrapError(errors.Wrapf(err, "NewECPoint(Rj)"), Pj) + } + proof, err := r2msg.UnmarshalZKProof() + if err != nil { + return round.WrapError(errors.New("failed to unmarshal Rj proof"), Pj) + } + ok = proof.Verify(Rj) + if !ok { + return round.WrapError(errors.New("failed to prove Rj"), Pj) + } + + extendedRj := ecPointToExtendedElement(Rj.X(), Rj.Y()) + R = addExtendedElements(R, extendedRj) + } + + // 7. compute lambda + var encodedR [32]byte + R.ToBytes(&encodedR) + encodedPubKey := ecPointToEncodedBytes(round.key.EDDSAPub.X(), round.key.EDDSAPub.Y()) + + // h = hash512(k || A || M) + h := sha512.New() + h.Reset() + h.Write(encodedR[:]) + h.Write(encodedPubKey[:]) + h.Write(round.temp.m.Bytes()) + + var lambda [64]byte + h.Sum(lambda[:0]) + var lambdaReduced [32]byte + edwards25519.ScReduce(&lambdaReduced, &lambda) + + // 8. compute si + var localS [32]byte + edwards25519.ScMulAdd(&localS, &lambdaReduced, bigIntToEncodedBytes(round.temp.wi), riBytes) + + // 9. store r3 message pieces + round.temp.si = &localS + round.temp.r = encodedBytesToBigInt(&encodedR) + + // 10. broadcast si to other parties + r3msg := NewSignRound3Message(round.PartyID(), encodedBytesToBigInt(&localS)) + round.temp.signRound3Messages[round.PartyID().Index] = r3msg + round.out <- r3msg + + return nil +} + +func (round *round3) Update() (bool, *tss.Error) { + for j, msg := range round.temp.signRound3Messages { + if round.ok[j] { + continue + } + if msg == nil || !round.CanAccept(msg) { + return false, nil + } + round.ok[j] = true + } + return true, nil +} + +func (round *round3) CanAccept(msg tss.ParsedMessage) bool { + if _, ok := msg.Content().(*SignRound3Message); ok { + return msg.IsBroadcast() + } + return false +} + +func (round *round3) NextRound() tss.Round { + round.started = false + return &finalization{round} +} diff --git a/eddsa/signing/rounds.go b/eddsa/signing/rounds.go new file mode 100644 index 00000000..4cb7c91b --- /dev/null +++ b/eddsa/signing/rounds.go @@ -0,0 +1,99 @@ +// Copyright © 2019 Binance +// +// This file is part of Binance. The full Binance copyright notice, including +// terms governing use, modification, and redistribution, is contained in the +// file LICENSE at the root of the source code distribution tree. + +package signing + +import ( + "github.com/binance-chain/tss-lib/common" + "github.com/binance-chain/tss-lib/eddsa/keygen" + "github.com/binance-chain/tss-lib/tss" +) + +const ( + TaskName = "eddsa-signing" +) + +type ( + base struct { + *tss.Parameters + key *keygen.LocalPartySaveData + data *common.SignatureData + temp *localTempData + out chan<- tss.Message + end chan<- common.SignatureData + ok []bool // `ok` tracks parties which have been verified by Update() + started bool + number int + } + round1 struct { + *base + } + round2 struct { + *round1 + } + round3 struct { + *round2 + } + finalization struct { + *round3 + } +) + +var ( + _ tss.Round = (*round1)(nil) + _ tss.Round = (*round2)(nil) + _ tss.Round = (*round3)(nil) + _ tss.Round = (*finalization)(nil) +) + +// ----- // + +func (round *base) Params() *tss.Parameters { + return round.Parameters +} + +func (round *base) RoundNumber() int { + return round.number +} + +// CanProceed is inherited by other rounds +func (round *base) CanProceed() bool { + if !round.started { + return false + } + for _, ok := range round.ok { + if !ok { + return false + } + } + return true +} + +// WaitingFor is called by a Party for reporting back to the caller +func (round *base) WaitingFor() []*tss.PartyID { + Ps := round.Parties().IDs() + ids := make([]*tss.PartyID, 0, len(round.ok)) + for j, ok := range round.ok { + if ok { + continue + } + ids = append(ids, Ps[j]) + } + return ids +} + +func (round *base) WrapError(err error, culprits ...*tss.PartyID) *tss.Error { + return tss.NewError(err, TaskName, round.number, round.PartyID(), culprits...) +} + +// ----- // + +// `ok` tracks parties which have been verified by Update() +func (round *base) resetOK() { + for j := range round.ok { + round.ok[j] = false + } +} diff --git a/eddsa/signing/utils.go b/eddsa/signing/utils.go new file mode 100644 index 00000000..8dd58a28 --- /dev/null +++ b/eddsa/signing/utils.go @@ -0,0 +1,128 @@ +// Copyright © 2019 Binance +// +// This file is part of Binance. The full Binance copyright notice, including +// terms governing use, modification, and redistribution, is contained in the +// file LICENSE at the root of the source code distribution tree. + +package signing + +import ( + "math/big" + + "github.com/agl/ed25519/edwards25519" + + "github.com/binance-chain/tss-lib/common" + "github.com/binance-chain/tss-lib/tss" +) + +func encodedBytesToBigInt(s *[32]byte) *big.Int { + // Use a copy so we don't screw up our original + // memory. + sCopy := new([32]byte) + for i := 0; i < 32; i++ { + sCopy[i] = s[i] + } + reverse(sCopy) + + bi := new(big.Int).SetBytes(sCopy[:]) + + return bi +} + +func bigIntToEncodedBytes(a *big.Int) *[32]byte { + s := new([32]byte) + if a == nil { + return s + } + + // Caveat: a can be longer than 32 bytes. + s = copyBytes(a.Bytes()) + + // Reverse the byte string --> little endian after + // encoding. + reverse(s) + + return s +} + +func copyBytes(aB []byte) *[32]byte { + if aB == nil { + return nil + } + s := new([32]byte) + + // If we have a short byte string, expand + // it so that it's long enough. + aBLen := len(aB) + if aBLen < 32 { + diff := 32 - aBLen + for i := 0; i < diff; i++ { + aB = append([]byte{0x00}, aB...) + } + } + + for i := 0; i < 32; i++ { + s[i] = aB[i] + } + + return s +} + +func ecPointToEncodedBytes(x *big.Int, y *big.Int) *[32]byte { + s := bigIntToEncodedBytes(y) + xB := bigIntToEncodedBytes(x) + xFE := new(edwards25519.FieldElement) + edwards25519.FeFromBytes(xFE, xB) + isNegative := edwards25519.FeIsNegative(xFE) == 1 + + if isNegative { + s[31] |= (1 << 7) + } else { + s[31] &^= (1 << 7) + } + + return s +} + +func reverse(s *[32]byte) { + for i, j := 0, len(s)-1; i < j; i, j = i+1, j-1 { + s[i], s[j] = s[j], s[i] + } +} + +func addExtendedElements(p, q edwards25519.ExtendedGroupElement) edwards25519.ExtendedGroupElement { + var r edwards25519.CompletedGroupElement + var qCached edwards25519.CachedGroupElement + q.ToCached(&qCached) + edwards25519.GeAdd(&r, &p, &qCached) + var result edwards25519.ExtendedGroupElement + r.ToExtended(&result) + return result +} + +func ecPointToExtendedElement(x *big.Int, y *big.Int) edwards25519.ExtendedGroupElement { + encodedXBytes := bigIntToEncodedBytes(x) + encodedYBytes := bigIntToEncodedBytes(y) + + z := common.GetRandomPositiveInt(tss.EC().Params().N) + encodedZBytes := bigIntToEncodedBytes(z) + + var fx, fy, fxy edwards25519.FieldElement + edwards25519.FeFromBytes(&fx, encodedXBytes) + edwards25519.FeFromBytes(&fy, encodedYBytes) + + var X, Y, Z, T edwards25519.FieldElement + edwards25519.FeFromBytes(&Z, encodedZBytes) + + edwards25519.FeMul(&X, &fx, &Z) + edwards25519.FeMul(&Y, &fy, &Z) + edwards25519.FeMul(&fxy, &fx, &fy) + edwards25519.FeMul(&T, &fxy, &Z) + + return edwards25519.ExtendedGroupElement{ + X: X, + Y: Y, + Z: Z, + T: T, + } +} diff --git a/go.mod b/go.mod index 5ecbf4df..b38587a1 100644 --- a/go.mod +++ b/go.mod @@ -3,8 +3,10 @@ module github.com/binance-chain/tss-lib go 1.12 require ( + github.com/agl/ed25519 v0.0.0-20170116200512-5312a6153412 github.com/btcsuite/btcd v0.0.0-20190629003639-c26ffa870fd8 github.com/davecgh/go-spew v1.1.1 // indirect + github.com/decred/dcrd/dcrec/edwards/v2 v2.0.0 github.com/golang/protobuf v1.3.2 github.com/hashicorp/go-multierror v1.0.0 github.com/ipfs/go-log v0.0.1 @@ -16,3 +18,5 @@ require ( github.com/stretchr/testify v1.3.0 golang.org/x/sys v0.0.0-20190712062909-fae7ac547cb7 // indirect ) + +replace github.com/agl/ed25519 => github.com/binance-chain/edwards25519 v0.0.0-20200305024217-f36fc4b53d43 diff --git a/go.sum b/go.sum index f8407067..c7cbf922 100644 --- a/go.sum +++ b/go.sum @@ -1,6 +1,8 @@ bou.ke/monkey v1.0.1 h1:zEMLInw9xvNakzUUPjfS4Ds6jYPqCFx3m7bRmG5NH2U= bou.ke/monkey v1.0.1/go.mod h1:FgHuK96Rv2Nlf+0u1OOVDpCMdsWyOFmeeketDHE7LIg= github.com/aead/siphash v1.0.1/go.mod h1:Nywa3cDsYNNK3gaciGTWPwHt0wlpNV15vwmswBAUSII= +github.com/binance-chain/edwards25519 v0.0.0-20200305024217-f36fc4b53d43 h1:Vkf7rtHx8uHx8gDfkQaCdVfc+gfrF9v6sR6xJy7RXNg= +github.com/binance-chain/edwards25519 v0.0.0-20200305024217-f36fc4b53d43/go.mod h1:TnVqVdGEK8b6erOMkcyYGWzCQMw7HEMCOw3BgFYCFWs= github.com/btcsuite/btcd v0.0.0-20190629003639-c26ffa870fd8 h1:mOg8/RgDSHTQ1R0IR+LMDuW4TDShPv+JzYHuR4GLoNA= github.com/btcsuite/btcd v0.0.0-20190629003639-c26ffa870fd8/go.mod h1:3J08xEfcugPacsc34/LKRU2yO7YmuT8yt28J8k2+rrI= github.com/btcsuite/btclog v0.0.0-20170628155309-84c8d2346e9f/go.mod h1:TdznJufoqS23FtqVCzL0ZqgP5MqXbb4fg/WgDys70nA= @@ -10,11 +12,12 @@ github.com/btcsuite/goleveldb v0.0.0-20160330041536-7834afc9e8cd/go.mod h1:F+uVa github.com/btcsuite/snappy-go v0.0.0-20151229074030-0bdef8d06723/go.mod h1:8woku9dyThutzjeg+3xrA5iCpBRH8XEEg3lh6TiUghc= github.com/btcsuite/websocket v0.0.0-20150119174127-31079b680792/go.mod h1:ghJtEyQwv5/p4Mg4C0fgbePVuGr935/5ddU9Z3TmDRY= github.com/btcsuite/winsvc v1.0.0/go.mod h1:jsenWakMcC0zFBFurPLEAyrnc/teJEM1O46fmI40EZs= -github.com/davecgh/go-spew v0.0.0-20171005155431-ecdeabc65495 h1:6IyqGr3fnd0tM3YxipK27TUskaOVUjU2nG45yzwcQKY= github.com/davecgh/go-spew v0.0.0-20171005155431-ecdeabc65495/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/decred/dcrd/dcrec/edwards/v2 v2.0.0 h1:E5KszxGgpjpmW8vN811G6rBAZg0/S/DftdGqN4FW5x4= +github.com/decred/dcrd/dcrec/edwards/v2 v2.0.0/go.mod h1:d0H8xGMWbiIQP7gN3v2rByWUcuZPm9YsgmnfoxgbINc= github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo= github.com/gogo/protobuf v1.2.1 h1:/s5zKNz0uPFCZ5hddgPdo2TK2TVrUNMn0OOX8/aZMTE= github.com/gogo/protobuf v1.2.1/go.mod h1:hp+jE20tsWTFYpLwKvXlhS1hjn+gTNwPg2I6zVXpSg4= @@ -33,18 +36,15 @@ github.com/jrick/logrotate v1.0.0/go.mod h1:LNinyqDIJnpAur+b8yyulnQw/wDuN1+BYKlT github.com/kisielk/errcheck v1.1.0/go.mod h1:EZBBE59ingxPouuu3KfxchcWSUPOHkagtvWXihfKN4Q= github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= github.com/kkdai/bstream v0.0.0-20161212061736-f391b8402d23/go.mod h1:J+Gs4SYgM6CZQHDETBtE9HaSEkGmuNXF86RwHhHUvq4= -github.com/mattn/go-colorable v0.1.1 h1:G1f5SKeVxmagw/IyvzvtZE4Gybcc4Tr1tf7I8z0XgOg= github.com/mattn/go-colorable v0.1.1/go.mod h1:FuOcm+DKB9mbwrcAfNl7/TZVBZ6rcnceauSikq3lYCQ= github.com/mattn/go-colorable v0.1.2 h1:/bC9yWikZXAL9uJdulbSfyVNIR3n3trXl+v8+1sx8mU= github.com/mattn/go-colorable v0.1.2/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE= -github.com/mattn/go-isatty v0.0.5 h1:tHXDdz1cpzGaovsTB+TVB8q90WEokoVmfMqoVcrLUgw= github.com/mattn/go-isatty v0.0.5/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= github.com/mattn/go-isatty v0.0.8 h1:HLtExJ+uU2HOZ+wI0Tt5DtUDrx8yhUqDcp7fYERX4CE= github.com/mattn/go-isatty v0.0.8/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= github.com/onsi/ginkgo v1.7.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= github.com/onsi/gomega v1.4.3/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= -github.com/opentracing/opentracing-go v1.0.2 h1:3jA2P6O1F9UOrWVpwrIo17pu01KWvNWg4X946/Y5Zwg= github.com/opentracing/opentracing-go v1.0.2/go.mod h1:UkNAQd3GIcIGf0SeVgPpRdFStlNbqXla1AfSYxPUl2o= github.com/opentracing/opentracing-go v1.1.0 h1:pWlfV3Bxv7k65HYwkikxat0+s3pV4bsqf19k25Ur8rU= github.com/opentracing/opentracing-go v1.1.0/go.mod h1:UkNAQd3GIcIGf0SeVgPpRdFStlNbqXla1AfSYxPUl2o= @@ -73,7 +73,6 @@ golang.org/x/sys v0.0.0-20190712062909-fae7ac547cb7 h1:LepdCS8Gf/MVejFIt8lsiexZA golang.org/x/sys v0.0.0-20190712062909-fae7ac547cb7/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/tools v0.0.0-20180221164845-07fd8470d635/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= -gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys= gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw= diff --git a/protob/eddsa-keygen.proto b/protob/eddsa-keygen.proto new file mode 100644 index 00000000..52d9f530 --- /dev/null +++ b/protob/eddsa-keygen.proto @@ -0,0 +1,33 @@ +// Copyright © 2019 Binance +// +// This file is part of Binance. The full Binance copyright notice, including +// terms governing use, modification, and redistribution, is contained in the +// file LICENSE at the root of the source code distribution tree. + +syntax = "proto3"; + +option go_package = "eddsa/keygen"; + +/* + * Represents a BROADCAST message sent during Round 1 of the EDDSA TSS keygen protocol. + */ +message KGRound1Message { + bytes commitment = 1; +} + +/* + * Represents a P2P message sent to each party during Round 2 of the EDDSA TSS keygen protocol. + */ +message KGRound2Message1 { + bytes share = 1; +} + +/* + * Represents a BROADCAST message sent to each party during Round 2 of the EDDSA TSS keygen protocol. + */ +message KGRound2Message2 { + repeated bytes de_commitment = 1; + bytes proof_alpha_x = 2; + bytes proof_alpha_y = 3; + bytes proof_t = 4; +} diff --git a/protob/eddsa-resharing.proto b/protob/eddsa-resharing.proto new file mode 100644 index 00000000..0ad299f5 --- /dev/null +++ b/protob/eddsa-resharing.proto @@ -0,0 +1,44 @@ +// Copyright © 2019 Binance +// +// This file is part of Binance. The full Binance copyright notice, including +// terms governing use, modification, and redistribution, is contained in the +// file LICENSE at the root of the source code distribution tree. + +syntax = "proto3"; + +option go_package = "eddsa/resharing"; + +/* + * The Round 1 data is broadcast to peers of the New Committee in this message. + */ +message DGRound1Message { + bytes eddsa_pub_x = 1; + bytes eddsa_pub_y = 2; + bytes v_commitment = 3; +} + +/* + * The Round 2 "ACK" is broadcast to peers of the Old Committee in this message. + */ +message DGRound2Message2 { +} + +/* + * The Round 3 data is sent to peers of the New Committee in this message. + */ +message DGRound3Message1 { + bytes share = 1; +} + +/* + * The Round 3 data is broadcast to peers of the New Committee in this message. + */ +message DGRound3Message2 { + repeated bytes v_decommitment = 1; +} + +/* + * The Round 4 "ACK" is broadcast to peers of the Old and New Committees from the New Committee in this message. + */ +message DGRound4Message { +} diff --git a/protob/eddsa-signing.proto b/protob/eddsa-signing.proto new file mode 100644 index 00000000..eb795891 --- /dev/null +++ b/protob/eddsa-signing.proto @@ -0,0 +1,33 @@ +// Copyright © 2019 Binance +// +// This file is part of Binance. The full Binance copyright notice, including +// terms governing use, modification, and redistribution, is contained in the +// file LICENSE at the root of the source code distribution tree. + +syntax = "proto3"; + +option go_package = "eddsa/signing"; + +/* + * Represents a BROADCAST message sent to all parties during Round 1 of the EDDSA TSS signing protocol. + */ +message SignRound1Message { + bytes commitment = 1; +} + +/* + * Represents a BROADCAST message sent to all parties during Round 2 of the EDDSA TSS signing protocol. + */ +message SignRound2Message { + repeated bytes de_commitment = 1; + bytes proof_alpha_x = 2; + bytes proof_alpha_y = 3; + bytes proof_t = 4; +} + +/* + * Represents a BROADCAST message sent to all parties during Round 3 of the EDDSA TSS signing protocol. + */ +message SignRound3Message { + bytes s = 1; +} diff --git a/protob/signature.proto b/protob/signature.proto index f1f70e3c..9aa5df22 100644 --- a/protob/signature.proto +++ b/protob/signature.proto @@ -6,7 +6,7 @@ syntax = "proto3"; -option go_package = "ecdsa/signing"; +option go_package = "common"; /* * Container for output signatures, mostly used for marshalling this data structure to a mobile app diff --git a/test/_ecdsa_fixtures/keygen_data_0.json b/test/_ecdsa_fixtures/keygen_data_0.json new file mode 100644 index 00000000..68193732 --- /dev/null +++ b/test/_ecdsa_fixtures/keygen_data_0.json @@ -0,0 +1 @@ +{"PaillierSK":{"N":25922769748919102678415192880711636156565612427571550685296776086119205445525743826557545692077634738129321690187868055737306626420419536394422682260657759329710259802294458956279773225258250955469954464209933873407784778802101265717840506851919529598154066919091078766953942869622551929743069097967501533345363150709912011028449270819442207860620552088412428865900112120786495620291333470644949767300948329241775121748888220588626655915013364614554467190860190736954650967874940702908395331234632114014125372505065096924932509595285205788545338407476139436404463823043865599023326570565049384032977060875483209339089,"LambdaN":12961384874459551339207596440355818078282806213785775342648388043059602722762871913278772846038817369064660845093934027868653313210209768197211341130328879664855129901147229478139886612629125477734977232104966936703892389401050632858920253425959764799077033459545539383476971434811275964871534548983750766672520115861254316608127511715120909186915818876509880056231208052258262510380080295105153942894215245396124765560528098088543032820032983199681389377630502693810272249886420412628917630701692773559849432356251989417662290420554742302877434371102841200978891107281847266690850557956285688970415890246967698012978,"PhiN":25922769748919102678415192880711636156565612427571550685296776086119205445525743826557545692077634738129321690187868055737306626420419536394422682260657759329710259802294458956279773225258250955469954464209933873407784778802101265717840506851919529598154066919091078766953942869622551929743069097967501533345040231722508633216255023430241818373831637753019760112462416104516525020760160590210307885788430490792249531121056196177086065640065966399362778755261005387620544499772840825257835261403385547119698864712503978835324580841109484605754868742205682401957782214563694533381701115912571377940831780493935396025956},"NTildei":20539613942852364097890357541124859329931817468396278432713468646303963073659662742703665137736867247354367523800071318544570641421320510992705137876681425752810096966415479528824625129989063402576946505816887222102561441464103605308386975248012283762854115939987945603503283072741824666735245204091384515192454349252950007899626081034649919068642018312817079235168086885705851677572363277983076857313399016624874649811334825694862350059490166759704819411086564625186038339099281295128259092469609539775245598320922394808913338827772001777479207381548603315272620456484970681705115865233047669675602308688791376160589,"H1i":16370062914568124684409954423220013634799944354368183091925443712820668316759795091290952642141219645055533606292548565759917746455430426634828957426644826424037530474618159463204943752577732484149675671820306363344833458247384057865310742915406677379586789735200748327711872632191061145184949312294612467345847214916930759229195852858849386686352293049987465485866498220082468131280135383612600619493426252446949294373638968518891137429993551161437309269629260378927918725566711632082553316166822070110359114229533322390061282040482480263995079579444943917107997110057038662405191417861817663789094790962966996587522,"H2i":9653640790649475435050720061635061544335995170813227062007808546473167610366804040613054457009646767723479128021709179513573358845884462519136809844401815066012655857973373223748942767836422506840658738556503260986697250346171921063441485400421533124068250604530993514803166454504801884882297625678932746326066096923436475087338628767636689481829832307623108408425959669915171224014581673426602770656342925462023157550194457295116217893440581116140543598050947318929500123378985275492765280831578803707538206440354119287576298034238031692982504012470196898579719660373199491817717767711160029710911173725338539566802,"Alpha":7073137964546302519426197108795918903355600790936955717923736840490732786295482817546181286885485705259790301469527483584427669945842799314651770055406853852732275734013259522600331726874819141516989629984376313964484821900473954306398017682999954174229504658528063236651987893368454589560813095145972845549239634160410038395430555137183455161117726890513476626495652520344277700761372318531991732442923029695918379854101514426650142318224874474725980008331402893988707190510778836547424547034272241175095182865500366323417396500881575168432154152735186187611899531856007795602612877814298712246199637908092122376599,"Beta":3781329124778805698135968627168562375518994304682072891270490638565903398815921016162668916726922361980836207877243235819696431386786182993335163149600007435177418332221723597286704926041137399234960148965357193156048240916422570358759272483135455734754411862846510585609034734348827060942031583563018534961341701886811090344356131522527105061847489994982866503647681842337628828003678510975110957502599684605684107010421879806261007404227541546063432272552677635838137548724398528410425454871871886019590411197377178358695658433582626781842015808404610705006039671313159344095133029530767173526789878122576408306961,"P":74682834361593481810023372364901068308987897092071652855871125748072435148922776019438622439256305770842874061361575542291646920690415340075876934694226424600012724116678454328570534454824214148215599456938258720769517493756120783418012627126126134213332959856945407004391730249681744107119504561374114258903,"Q":68756140947346998421359710991066203811047516135270426947846872112839728963199219078428991392825847385895934224515769850480824784212201628242055180420737700856064230455409099120643105577895376414218231855017888457591638558485545668540344498197465720699981681711132445684644446855255773133247109821728609375713,"Xi":104274657407863474831405022936374567141379727082942638393989568860864323460152,"ShareID":99910913777216787121500121711080713911605201308487494263101624819470958719074,"Ks":[99910913777216787121500121711080713911605201308487494263101624819470958719074,99910913777216787121500121711080713911605201308487494263101624819470958719075,99910913777216787121500121711080713911605201308487494263101624819470958719076,99910913777216787121500121711080713911605201308487494263101624819470958719077,99910913777216787121500121711080713911605201308487494263101624819470958719078,99910913777216787121500121711080713911605201308487494263101624819470958719079,99910913777216787121500121711080713911605201308487494263101624819470958719080,99910913777216787121500121711080713911605201308487494263101624819470958719081,99910913777216787121500121711080713911605201308487494263101624819470958719082,99910913777216787121500121711080713911605201308487494263101624819470958719083,99910913777216787121500121711080713911605201308487494263101624819470958719084,99910913777216787121500121711080713911605201308487494263101624819470958719085,99910913777216787121500121711080713911605201308487494263101624819470958719086,99910913777216787121500121711080713911605201308487494263101624819470958719087,99910913777216787121500121711080713911605201308487494263101624819470958719088,99910913777216787121500121711080713911605201308487494263101624819470958719089,99910913777216787121500121711080713911605201308487494263101624819470958719090,99910913777216787121500121711080713911605201308487494263101624819470958719091,99910913777216787121500121711080713911605201308487494263101624819470958719092,99910913777216787121500121711080713911605201308487494263101624819470958719093],"NTildej":[20539613942852364097890357541124859329931817468396278432713468646303963073659662742703665137736867247354367523800071318544570641421320510992705137876681425752810096966415479528824625129989063402576946505816887222102561441464103605308386975248012283762854115939987945603503283072741824666735245204091384515192454349252950007899626081034649919068642018312817079235168086885705851677572363277983076857313399016624874649811334825694862350059490166759704819411086564625186038339099281295128259092469609539775245598320922394808913338827772001777479207381548603315272620456484970681705115865233047669675602308688791376160589,19461028678249357721701139019984545699598216253588699892259672060166427273458875608319855785678884811755179389274380053495578644060470229307987007292965327985966772681212738091909180148035785695413643708212165777295662698493311553457174395686873169155288384255670661532430410131045712913078128214239252258473814281283319061613409102410606683119900924722782015902970301519339718368508022893331969649513655635811522767629123667744907556474126774472529158147258343482417188228144974952598132795041139358631852141986745214674779692377899411672630850213748161088638857089501019216868292821676374914063004957409393293909513,23815206664659393600414832732918591362081086959256855451108811883313935088830793690110550688160373127903180149093000695761674277348327575728255258492470452704258920461298225437641154249481888087192237143947805411796310656512191138629555279666557122333244803756577286887501632314162770617970064401783626962319950524158923845138939649762251756759762119774585338772559055859463599094869423262313306255644927649977403492926253217608523813644206820059309357940964633363130901166057002430269910921882664166860038861390305316020579398429144038386189480114288127704265879389663380565983482028227028306457603727009698486364281,24531363009049563762536664273685630249930678743601473345646756718446749360580428942513295608401046098557387011967587876621178423418085640157221932880387840241062539585907115950101921176093340357598786734576629107604766098059509560466283874031181440387973563913507733219768477775440248994272649062713092103053254889978195382189063452107439308150731662099755008823588080977928436274879799764825887538020606485093127463680041134931480024720440536560752357773730443722294290727915022250638670491342013254556128005158924861347226548459626859027825687870031912255326425000561908947972742109607669897905187712585858898757609,25485947141960036800495601740358196336268148055632283852581334267632567089581351729697672659186150817483946028874699734841543360085445274610946793774678284845142698994270979141586640525566502581978495871744643885460820923876472270768798335817566781711314773489485670479771252073613546268231833675772584402239718946768734191504723089294480532048176604551680713541748910822012363078082926628834536634899606309021451196325472880525430322895659546741570135136047631868000597393506058143850364801619503318165686086392731222189995494225633540472226098357551602534472541794408218767265775850366289511546336446350346021282237,28927199961592509462716713052933904239681693743133323458100757563361525410670677174848159248824087482997906403441479071298957717300803186875289912194352025314864665854179681659546207985006650252942140268140510157106320849846175665072784539119695315757729095462689260495430463870222739869312073694346079553731438032339737072477343055235278557275309616493517920166164080693605271556685355062728635594753076381152709174590915306592547837200121302421882042327338955791916538647734045471143845013412592155994390976714634271247514800401724247381959070976404354024140134277339724455784411154537706347451440209596089260579033,23535119694477523772171748044630208131923028017288499693412795663706886468394056769073862998142660508474676105711590469240299300182072142961838102383606369450702330959729879893242049940029310408964084662077585876233411878169942718467081776763994846585950049650660912827541883992039288017630464390592382481783566823924532043610685633953209522603678841504652207254189077646669746333277037092923165111872444873598439940966325805716105630151638779643981500665152639984434504817034412086671254173379166038071662889121653550757613052820175939040916661555723756176613161036717523938816196299007092417098079561970714605061629,25950783447263038071689830748627856944354421735888733670277679971199180982562433131778324823115329151828330351648021612294094370722267669972986008148650808031918722892417970047773133521052009921040352676366121022268583455702531977371124075420219730460605780729481918672698487964603151661149289116143779941433746038933525309985350586367303720987487112290090195247099032317451409521767630753382551078895196505751734814139673689437231496521554705226938471456297964527299627857211400740652357956604961830754401147898467475649318148547949522809325493238323065337997986089837089904293908389128632840557033917922339991780941,18687318215344566555182740902454336428592486945614858718824661784376438207943593936740995084200358460316665071770681463630810552799361606949595415859491617650913620153502889285378972038135570359724693463761135116433672709408902151793979112715679738392883186006369274528906256519536716049908878346476950103274343269649895419042195937774381514132210454482820166758270346958078142742840173830940449171621914508101385104081796180941351697633772994457709351610367195330318869580666697900958479010130985251846923421963647318437209519428820003347978947799013079168765159404172743072632243706939700207639779907975142224264481,23171083837957860801722218699383337900446240030786871268841926233540016534306722256418697981846104677203759841627977766724259030420015851980511088229043403050763668171722648141766116654882525867416891436685059276174192868946692072206824573955678962077288068058032958478942750338128252470165933443869447212456023356245726416751721989152798706366691818486325734110680894776063318626260722657549472271184224308146689662638536101291469177898475337027531732897213355102104990685266062044811809193138366772764276162181116512200063463469172637189164324496242489479899844513951546392297220122152709400797483802836017803985829,31343857270714098359641269819793471247744609345771779520849062499842222751853736635128030263011267623933026775894009843057499037409921342064326054830123558338476304900840753732976691522721379417037190976719048367738172877422341695489954487825668390415147795382659776979019893183466662138357984500601883268994989224933833342232607751640920642550766835871191739404896219865225614116435580799461951708239551693029017567595268404121330207564314786956323833427106966279493560190075571199071036639702485305576334075428484139050116713328535867597124971991546934922511844853709001583656359284723717084806850145785405536911177,21157487427733991932564510362138492162446873104287756897983482468142107066461483198236006898398559574298806811271053872211924774119515269456039458266616445024300383802406544466004007569246261860103312006457776588799344222340569710165666518367783547810282003032927364478322210948885423703591814633243286070072754280297773344097615910071723846039979528910869815670975142743376293197136856592859188733532786144697373533341877747464753616005694543102759948736736802569257325101204596297349394258616025918915521692968786299735438817719576226325356937526633071323693338940757362235570825853130085312301448111119042363796113,20871071186633559430638470998115518791893553646420368867902204568431630269565952322291766136370093127894084798814242475456617969102595313205728405129168253735048454253508700456761223106599134617920774227174015124829476988377890165462875183814841087993485125686632410376362585538078467534668954228084080919739417042353928509644795709201564083148094079836306167650314513450129297783489119015593642581024870311297891618816623633162063381775243950740681581620150958717466968747843706102214690157071025611480716612116918336154774385432247274600064909320680551901771492165221773721500541614228617829117370166464409020423677,27392140202372139560911530190722295626016991167776777076251374167016701252229100335980281077736021393527993281083564981442696373714433732500818431355034758384480955155409564373832745499649881975977124862697809360957420580753883129965594447943274206109113518479198329538838000642865155652137973709624008263285324174285285129803357738290385065522262059795474318914719823768887144641758090777562619592046692917101170170722723905514971631800061092086777420826999668590868568525034863406950714560799453233548147404988580929389926995856613912328981176466707497680180241272497358147647189027922268738449537259460751070153621,27430458285560064975603737623690566617914765114564307656159371148918349993794669623672608540855772729568670170546349850367039352526804750358257162362490778729908291097260480430890476823722553654389178498566668573496227008913481934125881578164602723285712928871252207939941804689355173665470036039114037118963971589320342018774107583274314158608546842149328506685304690959566263296291871998398637364399822435359987280203416832697098234360106966146607816540746285266790106830402077656904149244001383199485864465648143588026246539864484902228828598281873311925831114015086450712030764672165915248196209070047454495085169,20958576649034914977467969756965874238364659071947031154211972997487243461262394795340258789930977809611131615831278870909123144191655991893039673506539165135637011485008482874021240555941833074286915507794874804218274011487390148860550531668300157069443584231888571925159473970195937554740938933226402208131160317818926784959057391389980505131685522579677264162724011263439981256344785140426649255485125637348357522582511064347878764724812085894898146080695383734063354384186594813474135513405234523117338489484424618032520881618202129068318264606277435174234229102947510033247339629069254901430086639327996737230861,25673210614761004254141737312053451635018146154378993341101985326929566270344015265597835170941666913606119762699769929117810862190840467973932188558749547474174367822508601158829928161219529997833862214002106486508027112865708012732033692783629855485545330232068552007350877531730729790772847199443436084419382562932662568511421420283558235026303217907581598166628555941188586096538364407553738314729036218493332920854764055946289816665260688813327844579390598566768671973314358968068459214729157676432241630688442073088681756498136814491310636028421098965714509622937097403466307515165856202257786336739101389349089,27062431131775909264962122516003720577621307700606752850978674545503762322327045712593154396229756047740198870458644425173406714147601486563284216353367017457813364860861671576291918230182938220436949095109018225648486931358793025228571750572403143070647269508389021099989559676856968002395615757641794675119572488971947338527037552287756390904188517823120698354616567162661395526975254448758091053074808436661809101512025437321837959528689272191238705432334775200965152419124620293521962173467865862080429867958898040527206234108561471429991355210673373595922083144022410446012714221026174220695995286555692560595981,26101397013404440939950108603288565551073409553356897393691328641679505760230621741096317929709636865532238670826796537369580597665138924272200816037026280780915781305836081579178356868109017075793286763556497902869947712856535743263321959264839901002581734771178344662509473227839268090064000382806059250315977679226653239225555007655990623485545590336008766750972486014525144801720879444739045959169483687885427725508164188831961197284042818573448808100923870021600896976125650269597381009562192855793477760166114366163011349461311146903814241124631772470784181050979028948750586113514587005436500903242591757553293,22437602225740742482465534898349205983133213895660550238212001804732032977697798637757435728694311659299624886491819969612531644822478331097020027346346025174540910579800256280214031292073085792970245723432769912206355626120327772649905875827091190500315669126429992547075064736037570537735332469814000462556933603719315364923773085086614780916637137068518726889173784282955430621992569759561719528189938429235007732504425905045067985337249988673084527372002559031400047880307427208848753891291386460253720313523072063965808016289774609282102972264056704286287440985034888143293816594327214769326166521224390393446693],"H1j":[16370062914568124684409954423220013634799944354368183091925443712820668316759795091290952642141219645055533606292548565759917746455430426634828957426644826424037530474618159463204943752577732484149675671820306363344833458247384057865310742915406677379586789735200748327711872632191061145184949312294612467345847214916930759229195852858849386686352293049987465485866498220082468131280135383612600619493426252446949294373638968518891137429993551161437309269629260378927918725566711632082553316166822070110359114229533322390061282040482480263995079579444943917107997110057038662405191417861817663789094790962966996587522,5792666313208572350705907594949414590804636531753541567087068453778543363077542142305947911768781865374122070750607847515026168979710170113788718287465368491981654823945993941924700096393523941715256095048825025361038086570514643251828085846380954791657627403414038681940866434304045104130214177360598208974353162505514170835103706979081795485247158115653501838694614859268884296606546104394637012764653804556264770973741677326601115655746125293204398034469241183574629519235451142797709676366285591723984602961129858687877266469708766607187000988412118886394000517917001485137799190522482532376333362935442751367745,14510201356793997359892744405553071944121896518459738320470368478827891282273167297002903311912769777071155241288755372185351193850631471716718530488323104261827697027757019895835360274243188719367049075501436153398857359555924247334095665350350441220453460409146684994664351725204034521761578947269005519140498383255606322844603919000682223940913285551513356600061526959181206093504072618536296265435830192715190515397064435874311583709516596584871136822289753837472532490128304199643440789002058080030111113389709287097531544417461853059085059819958060220257218705882557929843952675556987949500595639655528439052202,21994027187251658420706956116678134303619268245311594874227984400819404446053485122189884678892175444688722527594580466254690437593853064923544979570444911946308283663229116693350631331935027065689358169246815279257122823014594309629197723508317910829246255814111959552337648906237682616732913305786178221005434606679461852547394872592127050442856550471832240167936976142756988960345619830477159914332536955389792251800932867389016006568741180137556936582683389834385412181167798283357296952856933963222988284608097870458140102834156304710781157917296313315513842893014212063887070100364867105131178923785373561146050,9913834538682656788610829579771569556624609911472542281771864528920206652057360227595914694025069327892774241543292898072673087864732558768588752951687639831868499912733997907550450742144719953844448973554109420086839278177283587750852958353526057789017170152122423018814264172807655239353760715885145548388992476483731471865364270428702324445078126354834888878640191523880163270112743069852403951565444480363239177556818094412397417215136415082364220806171351930690164376890892251369372868624028034980680685551131786332553623705883769998271596791035214982761974622986462384695349153129828098712177799482890430520965,15464554656029222110560140639422624868539470020281691165975400448606613120973644407534365935510334228227263162749065335291017684520353168923100727746351715681760916446206803485743114757577242723665933043744987644589191843035807511863595701170012104449542518101585729174897996392297770818633483533801844500665798250501473521227123975005972911918718226524366806206633841675388137041998857549215313632375036761617534744890091542919972307048750757690677067439820416806817051344016166652866968067639055986253789416713411110543055264622333767216550525033482750914452894139691102713436731472281130988207399023815239852528906,12865788614422531768878171769038267076266208200249164027644212721909963715015912538682157638127903293282023380796412378159235431043017021949518573892381565899437599164703723050587964116914107635838030249942901605297513982608974593500166572552953195544515492725593747884602852061628830280449190167844572097543184555448060083835007200101317266753106995526429573085540857281097156159258319440414895242242967023265742835942344738184941128584859242462621792495405423196954908356769683815889035326257091875874458718611430785903143039161526479973858541524126951528796262613552089943663340076548393182371918642954593889432834,22194516202811321146792934079465991238594712937226367504517257988113211333368349800836879103947252405610400726941861867633710543721876626238467090611506859331575128297406631557631820626534381998686705168632059305910804423292984195597625141279765512951234238593649775486094326905655122386938572411401132183960062730500896105597665702000968846572795357957098192758080717128908256523579293163137417423771381528097786100281383788052729825837521137512379280310081930804124457815661946839040621474089357381345723789618079958299474682840114875558952249988571746058484000722421698440994062460208554903525444210802321182968014,2022329329707369117437055740094404969047484980501833952214571687130852032499620508208708908589247080600189902502365407836277381678968110704345539053376355432754797822267575827372488857681103447936055038802753292113151984972961755143427625893918328299356797405969999266508287378495280713821635381697950988327467894890827305051792226857027384943282520470216088404776455333696749084292781033264737672933515625823807581567568754027253581653106384383593181057349330506068884659072076739226363616897242406137010778123983315619151551375977509919335513557274798510437948502408760645678633359245877721858614575061700591393721,21638702445456858422878500352234793329413106731788942261751796025224145517964611169394617788434763506002565806620170893339110273126875286455095506459298086020278318872581385674653253080383128797980439557511752718258375238388481802546638936192461482797150514683008473213407715728694302414916863995043974867827876036585791719812271742103323384468954527534596036617313432433874380308883492321501736879178345427074046787174556058119038049586737477628511165980047288251497278209275581664775606335268904384984155864116270266473616061700061527150495070719210903471680082400487754898061609554671248760480063619759950744280907,20932768206097680299943959313782719928339866139959731166252002876096405653871733170637914957728294590217455322823662941811142831487382716004980657707514358763150029924714520812685697751484102120909926147024006189544048800446501267477163792293393919588659127430522309503845365000611784195390022621092266420671288509706282186373855655358090019051530324622779193478505342408854462043136412488215465955955421082850282626458587043647758494935495915329050933653468179762936320308005669155322055934931071589853638981754901315764484414249149121368560265856082417024956730272011998498550756243974623835494966366962683389714964,1365816667585940330490355905311774458514715320376130020996515573937571923987574784307504874484515899610747050162880466334946062918938639620242137371098595406424267003818882220942016240927776918797542668204898851284066695289242978919397682088055368818116198595348273129318762376760634794532531433638073562846988038755248023571028829475051882101071203979111269507596248527906600986677728810751499828436067766182628039345309355341295172437424660504415028913205507139100147921515616240146193076677157859750716375066201587358526136840334151066553547201088947345861316322897488659331106732575557394540428972305438213375814,5703448175361065536885380258834894924349694750000788978424055908887487214267289314410654116737467233333514153490994654420800717947051017245903088635547080581089891657444714373263301759995815635072257679749046151543038146531810310826817366207696928190231298874979984114964348460891792295427444943206125809938612729939665048974349693961742238426880015130297226114935093282566300228257419316454068258492582819117310017835605391570376283517758701794125467889060184214275911038527696714000045849219024045243597506828846590195831908281658454892131533791810760325400211405258812142759529523572815227489710851557846638137542,6412242406353564485058502679404605624009190790593030266854505291800626778702270387175472290319448965303250433574173375628339895100997329474893279692868549940279796264731093585208695625011062617868491258157215447275957107991387222489580499373804335870682739788296835432969262878909434810429803264643527538555130662379672012787064972208117475596665593916782896686056579449802576468324812730306559649834202797329883549294599723290402017221639617907711497472325019619452322282704828796586508386419927496666562295856731151167316262475184222145101211618002798513055006067228431048839763646095282531119806559583105533794495,12506213831497706601305625665856619892819919408470741644330076368184175310515183251146177621238406207206410185643656979107225155831507800032694528257147716038515158570256044209419514879851010106278924359714862316802415670557334433034976750101928783991744583819411313589306343712690219032368416678985323530251239318661396466801994308940886752046080901718450406046375904389766893043894196541576969928137946704159382893563356338387889137855413730990126192021766856444171515497507122402917749807424621383187173538906785892654668489198127757882153223185090960714890345630801099413698632285321494907662894187137142803150791,4340320683992731212484211057800765907410470847269768304639037529290512671362801376775768288042129836088810539204858832843247178308000345604701431226310915807542068901686097542648829915466491213307097734259829414895234796525272600474326857346693882386640793824277606043756669695477090601330450743232413209505539149906338741119182508496705355703793044044384724643256986023764031438551900073624644692938223394706241422593949897781383635695299729171084301185179708550600098470031089086344919627503113655735768701217637285566867914251954499504690075652022468818725559007318841314414541437592229352428286215595483845053638,11992304082547451264970842283976418853821301172975086658682116387543359417074268643442593212371361490968819128789238354995117145993279593426471336648259583293294202599078859260437992548184464009386152763827946804967424362206055435693041324410893236957405711025923054702040161696386453571055246924713260145964584750230359074777621444549946362450468684233332414284037283955916761049858000878784786268023500095161975906495439332741618288811384519280375489794382891880648564800750663555801045203854227681083222146920912455217541211811955477767635787030014152643158711960638325867606918508708678622347924499914937535267162,14695333877946105505101457937623624377562698430478247685331048607650568913937201633971254630714736577175024535322415669442798271475956496536083972430246897654017678266490639701809689918981250971730052435032797344400248226649579239038593902835536123498617918666329121083751772876090103853533035181736615043011673643017303605152279678650202512062770466963460251942403425462061196179491356440328364636048438335959347603428717042954470887883300891927932651483741068303515425618933688194621659816079976510221005329843899476003615861655015952079393164902282608831513778303062716347528913475870793908798463564832083549613643,6361624891550612817090909815430156259585522002511378700573226127309539860650523892977168943678195716824260472829831132024282728135758912178943090813161584286046605117495775878170654691942858452263763077967647297167266507685944611403131069163214134338169098006751105941940463654618427873599267528041887836331948305951890335742121311832653316741398094161561749334956600724220433324620401615490879450816097431926849306846384679126203940987154375373597650036103822699248044107851648286585837187416880739896147553285981829664828869063480707437325000260106329487862878699057790666160151383639198420965781777521408308842299,14948927140088320458060089936345715166494298631495857212773926944790409869483957673185876995292328343640197788589621807184518806705821872810447516194927678801617268846361533345460325613772855110322242304569109406957894646727384216069315325052819333705539766154972989576988248927288284161530384846682668538198851543196833452065614949748530253693700328342501577900059842225778082026779632761099626760985225309957646536118173500439351182747667021029407125807666947346322131872894915154624415940708414296769044070685030466034270063053482191494419465005898644603408406165778424189251953592599788015054586521957253320449350],"H2j":[9653640790649475435050720061635061544335995170813227062007808546473167610366804040613054457009646767723479128021709179513573358845884462519136809844401815066012655857973373223748942767836422506840658738556503260986697250346171921063441485400421533124068250604530993514803166454504801884882297625678932746326066096923436475087338628767636689481829832307623108408425959669915171224014581673426602770656342925462023157550194457295116217893440581116140543598050947318929500123378985275492765280831578803707538206440354119287576298034238031692982504012470196898579719660373199491817717767711160029710911173725338539566802,3578111860663702772408903345930659472256129868015762875031051677614699117364424442270785915866444756532836287879751640816575659073006676007210405202315496945346450727441553016187592354415793891110773645408147683476571812485850037389853330648238106038729525075512542830213816094853869971661719959033499816133612736102442725651388405183329714325258711655979055386253406319598230253658818466953001815116530962213661362799968355793928849708876651937113231862631691372187008559216884922263381652908899796744393080985272287681952842592674663712445064149288160957033524932550150413325097150870149209345404214256294282382085,2562656890570835296352376205216590519360952576353253013086344012422175466058176642832419040937235521572328705583208834436813588375562745525224328564354560731400723267162764903064018742843839822445601315505274421672289602485557719646504320106522113645676636456687468751723898215955665240524139836668877382766583475339565598073690853848639545227831264115164596396262772422415214665834769274554577301336288865874066248890243346947740610544045667761548206600923673948174739356732295677551749947395385332556227074205668024351973201205328576603362256016900712683688241615565934460363012498930253514800348031700419220337084,22298685304249156715841839507145325522077048988910268345524279200863227356693376151033928569980263444962701165900514081299580440300365488019578288962534096517468902687907593109404000193096117803450936780948162440311950526862133749440555125530434273281017640257175046682563772712146188162909037424635371282116160809281350332585723737917537784267577381007869736550494661878733387948458251550312048040279754696568539248453484809390032249968377837207868808482658171733689439009562188880777607125039187467565549644537971596666666932158369857160883674108786200103009448463903055431989786220430290067137368612432640074310237,5879475324785385886080118453628099122983640585548725925692818787221734315336181255707999432375105366554548265736590343628955580077952532008988837072008731794155978542038914506112861039350525606157951017828660604272526605818549217659336563240062224484914310161520768881507503977620229908361541865095980430141394883457555144123820008061398004875781145432780438239985999952863196781468403423593755390719871396312035325131303835880979744451815683310530516197085535308856850866798018523735074120787646575912319226234213646284739550604897450763442470406797690674949855848424274918433854009972115369882751833585035329242761,18385446607341413929216752317617998458160849115285197433981133872531647462267817752048089105851349541660795002685652456000086108157981979426453705134803682299691630928200421847304354380350114763235863451959398215394354125874494984531309790405988904217354164073819568789120760731377280912128364362051769093741704293517942028826498663326655241508795914202031051398724638536523567800437872676476082333745719105291491676453403521845621182329449421075607837301738332926110019535833222421409565228043580701032497151738816862657210572819375918881851411438625526045192015060739626198734346744421593858157488507552447503219157,1543023308301318791291636723263661645234407352972693347930324541592073282303070472660827743672362126204249434834670307886593868303926045601951702434485524524299146190187978789568968092026789881246345813079894138764374868096047892517784410005345559357208978859029831295378789933334638460830863012154730679683049737545160281582305039520027158141403805442275432519516975114987511502563484403828987844187725357101956491714139410763551382100998178318863295224089354110436171289236674317711473441156004575613857935802947903186710273135122934512388821226072049093290647716152026391828419205457729234939199662889356527012444,19612969155814925927900736991694631498815639143900750081709470615537990112217002271570654324774711607889679093067885009086620212727925361021546388555967618760690930383917718167829905900473725102007606380323545403188303409627969907029774876076466652636827981089598601596821629485556381455948439528301393466043329774616323471054547330305463639720319551756652789237846520745512886328152641158526571443916940675394167134193466655448590323552123565655514390433855054114283235652222186673800138041449545987929749641868001910765212175435331820335256408276886037716378072029444719891008048297796893611911457701948988529229282,16728597479991680407332164223276251930971882378040601546182090035388885277790620642130984559023085396113670088325023048100279567479347085329073035696608554975777409036805727779421519384442869313567486101701856985975948368091166211269762554257345698853374624187196304439193724792774291722910128170261256918581442838390388813651239625403911503915460141004046718650178671549506593787333200145941149923809156438433492770338609398675185696331933468246886804722117355530728325631706711888199439210221397335620762682713255422110226515677047306270190770133307509623731091673964502293431264279055367772707113499782043802219072,6959317283624626561280838810011851848606573383456333866356771642710009365943896928686358713606049305764133589953562485262421030190625379899341516940088176438653144375343629199857524649360799157617467464667207079997090732685762910728717721600193091207478294785009859545546272657408615665578978698966309579302786158306046780048259033960048367018506262121833776982527433736628482989970739839626561164331780819203300647377931749431379962789021848504353274218995997754499900534324222498419599756583548358913120017762065234354717544865856293340540081744252368993926137398125931373959455585431506453093937785431907339954440,11707820384786665143909181917722140695066077204138675859555940823963085499198625584153264077484611920625749300043796981737297557284495008476240804003977980903028035986014301427047695461308987163082644181568819427026377861293089760745032220979974314071873695748444473344481739404234865330820136242966321355292830007655295383627072182012764804101331409332152687101319613845603099019594628684448783718018158413013589965095889558760502141979036830513073469713570347578185733951700672935586145889495063730457422516713768592535269075934288536062686021973569079600458124449475763651523966025703378628943004868525425132768470,12680113365919882057574106113475868522128522384382601197321116786250024227710942753687346378669117549887826210207932325610070970266526443555090342822407043741408930676918514338947859254583933603158241276952467805479024344654828575004834480980171788527657050724406198542408746742354531228386476751247072501617975174749412587537766151828306153888252035411082379552917399551115964687725743020641384211728557413837203373250893065347048255589312756928959773947595990023044227966600250595372063312552514516053386563033360883348059069724261103859193470298590631028566611086928803669676829225666250863192855787196720603673760,9019657743968669607069997647539968262488442864840563257526073127843215521457164945521996034009113740811008633126128201485876365964359243077677187550395794512954090076458031575481109943534530172796807658845833964496790520042423061347000207701119849250007073432625973802817311058171823571086584900654526615124913824393095137876668486739795620319593113487319306758076868523633806281732675535191877729151172494277333403640038019691517232275137009983348569240826245496914996509643617684093222096189728055561573909735610063401084000594789204303691795045753669664876756897469727730211469836756344045393712182476806348262481,509727692658127329234819348282810282823358222955712460979035976368760532139665502509369544837059902335508770138210475703837249689840377266421270410968940058538125244069674567645496962345390684467242600183265156396927471901904730403435725549974213712745153254130090979413745442250230122176329142735628394058559735078808655502950813887104168441824680204081093532561399756958380811786995754253778833219233414597390819387529718886819478101169481249247654168746478268826094117295037052091370216680279456693786586815595643437522530315484348520350527079378100131478937805285900851443697897872168020710497135465069780807687,3842294189873253197555038084451026657880884971357471477404186912118522652991181539287485996470843289095459960588932515934990566949413638625169611068786524327230092661471599333492933504858312443510340452825109814219748343465626968500133039743956522352452046474898271016421645025612565409422475581907506677274527441400119913285024497410632467771786023570373229380492185234340140113773065511943229164821322784643171443642045254567266530741214826934397811463635644370547054062567012016231228876473774669826378368361454200858389911185989849447377758286974943747417740672897265471383352127822433439855380640722238771424561,12605457156020973444763168611522695283402376793806466187139735133742095649198553225011255516233464381926302993187553632508703365300132776800901755737316341235931477791227746456204649162573568121476427289406145613748980339685673661511024577823438911510307584137593479079190723698666793670318162798116104492476114229973922338166221669934104784402698512349426984473431614385866651807327515058966935011035923319124790759086336194395000632944700277782112868323483780168144642250558671981757792078139349701070563555668082796938131863328410412160150471825619049694173807371104601644825755844313657731729068891163705563867555,18221138784555811053296911040444811422299569221370698341523745856400091281377839778678778328149110548534138934160836481393838346908432982920562116626677959686450236292050295531261923474882738697393510842972966810110218027601675376030586402861098487543863740705626110087204717386977952136809165092530095562928623301371629208844732733664526090007002304626939446606391205626126192870615394522174649688440887870385705569710809581575204639778805466412903927058799148697158251622260213645585723159916754663707237605872275846686566820885362722073881904277317597403167380835907876296870877478221646920284310430371934404822311,12694464409184116198175216134705674117698495589897734763290223249700439697747213221960704240817308024376618649511257185410755720163743943692791263666036558979570909072667619923266653682384882259644954119285287063471541002032435823410204495631358202104734018269537402171761572193134509812396214919229814690930600798504895496564687656801956575973479011431776352638782289114699743527186781919502658003154674450714069197242726393985114420810547684173494018605147976810102913734546162705259030658206284298418521349062777115509219489672039075093329236647292016824670535351144784388483525751068225542810044999850751665224074,4201765615355271720665237538919680402664127861292891404309962354268106831635826650331041297039291644925592311983403700464576600435518882156854904159089879201301912105368413055078865795374091914623189759593456721300785707753873135853357294442043908826331857106210726005526370024055346666586491341046296314798619327898858072624823009991437876242325624019938022318176060332738994176297193724805935694309014605422020909137014676945305249645201662101488974241605863532571828450201507584679493905057922784236072997143238879363168245889469038437561181276242698369654938178116001428367837409133015026021079614840533626761027,5693818583095067032554302348404689889827513405370432124730856324552577938645345928545249455102636900381970277642590696482249653647276002965730520652542065397111012479589269283364878130676178205766673654461574816233876555267291293343730094421360715866449358521574582941335437947403997555554148186986038285554629922609604751054748762347310142603219823359220130919495866316927224981350998367935679597793982889611172206443879512553133682522147111994374985808397513270886689704297115982752710085691562031953231724109895260045500479387280386873351701423764105530811712645875225583048344423503433093456461313617037044573606],"BigXj":[{"Coords":[31961961449149592290215619337342545369164998201385135329342844666166714363705,64636392625998908156106021830673034903148364934246785109426074897879798496695]},{"Coords":[13561027879868215202586968035768135752207534764402067848160241312364043370282,31683215740694624076579960720726613640416539517460242899883851320256877874663]},{"Coords":[102970472861055393328233354777448191839076263179087526130927097177204776801806,19849778771794568183958877322544789075545226949228544528619329359950140265115]},{"Coords":[8366486354279759555693815735694831293559828965602250556327317858912116678471,24456250444071880675953816335612932507033433175255559522554349078047625549678]},{"Coords":[93126246885046599201299142306317944158536766260090154798797491446571717586613,101632074177392193573512178573083324222329391048269493231849116848088552218375]},{"Coords":[45944473181199785374833853975473363930687909609574532965286298616052742734642,49106561873713078177518155217967815241790729328033604070651886838013799968339]},{"Coords":[88807289702586806295763026580879412609419986472794654189482668002118698433065,66889255218792877467551818840857264643456782872798377645941824720058728156412]},{"Coords":[45745777770010867130655637386117976632006388263133845103488205463444756286557,58413618959379828248439575493421719547880693819703454359788283537541749522854]},{"Coords":[14931705718614911512649079486924798218629483414127465950786381421646404878840,70853895869521315016717813866703398949051565204254795550601147911581008651495]},{"Coords":[31702825468512650039750289022997764002837389172468049717092331147393818254752,90704921170203464181329063311130512192295590723462840980995045506481351030148]},{"Coords":[108133277897421036808605843118854356978565880360693563552498521263092161957794,33994893650793696043114830343063091347849012751372498052809673503667071259863]},{"Coords":[13603746174106309213882605187834221055267478293724779491981408043396477605150,47502402322605913877968636451206238145707201411072573659819652572960084227380]},{"Coords":[21962637032374642863765173367353663611071785709723940819398260699915154728736,65876190623954751874122457014542214494068664571689464338691288646258987627994]},{"Coords":[8139291295258406047002639746372064115101651961499427493344848502049438028449,13643120656693319356484507306610353728697986968072320539867387334577150577786]},{"Coords":[871083651129542234211830236854985246175496411885064575219875767816674532739,100904963893789549224657775356884044157291453214379932308347421012612568685620]},{"Coords":[98028745019433069815621229762947408124245116227553507407780733119772046992520,60367568163137055112812282822118701471566204774343904929920219271364583776122]},{"Coords":[37332951852807254347441974643993866127041633128152922228434313154811023954744,56046459898819968566785812285970001512876757161864884424831574905585289505077]},{"Coords":[11223798616675111197150792218010453124916879614948521844981845491687409376646,70914747125199464172751182264377339815163078089055967502760766110580370145293]},{"Coords":[62949410140974969962342726366577125978516456835571210444108422984760191628326,55668150354406094271153240357261264601037343235231498038021007487545647055721]},{"Coords":[7611358883569187056502001665501128526153865541559158134839099203014115911991,87617845479447207941483995353359860120852817257735643485765526341493112597509]}],"PaillierPKs":[{"N":25922769748919102678415192880711636156565612427571550685296776086119205445525743826557545692077634738129321690187868055737306626420419536394422682260657759329710259802294458956279773225258250955469954464209933873407784778802101265717840506851919529598154066919091078766953942869622551929743069097967501533345363150709912011028449270819442207860620552088412428865900112120786495620291333470644949767300948329241775121748888220588626655915013364614554467190860190736954650967874940702908395331234632114014125372505065096924932509595285205788545338407476139436404463823043865599023326570565049384032977060875483209339089},{"N":23930233287283899271771864413305422456138957780711273892670074191715648409585503033095084345383391541524625291548041741990557564183855401706042293717552023237439032182637019639795919249455653535670614575331737610284863144094845900714497635996654401300216924764570210541950557336240993007183309433063094227377624710274228010652758134777897718742178998545079447283838099902510469006366469099975469096355736757507201973304413688395278990349533350163833514531655073848517781662614171483003731680841330633223244205178982328422170273570503713081265847261211618499950287557687314846590616484106774575999250148317390509484773},{"N":23804125140052077689856128298352557083678652474445385365228110453726681237860799979845611556170894187976654278582576364089033396218674226546868809651353049956675922595541689542576794678062495339422204984765419389268325283682512000995221750412104207394441438666051694475950049774094896290106430636216894744335784327798634247450687264677393229214665686649911456587168142148024558282134024448427550922487022680890892554782651383972136386958126051377715096556862662265886688077689941967157694195467190297477735450118736949849327358586935699405848605265912107169200547464609552395233560924746135866463084686118233592906569},{"N":27732731445242071631661957657712700411367090291795241371771965432140171981887215839890743735562516245338158767440902124645306227526755834590210240211292920385793070069156192085968959067158127765511651425539136016999745924428061397793021945121990437538890398656832618417715425504589084090095239114803460787199036351739230987513003864153861252195944069425337294669643857426654756086277471320443733998616523518289821541295617435513033264977202437153989318832642208143170451837926277566396048774049270318848738844338850668187024045715008196311523744942555689097435377598835544336914580911633671909176827168167136470690349},{"N":24540078122494262833119917930091872139739129939617606686122284549157786865278292966087938309454800165081094474899057524752572006230843959997841521536274236615511587750039832014979332539924539915807860222967109230298738770371871063759834296194059907031260324597353713442284471130560805946122495294807423458083635025189319558646442212459161798625793784738344309603016513355951936699928410805609866016648244631951643648288242475041729105749202516848107495430809184564037582943457286768883109270231510808158554549441157152513493684930416951758705877335895250913277012541968048511163986915876606316087458297080987346429881},{"N":23068407873896187320610408658036992760323120237076281539139801143529656493030091268390954927616119732305210576479622679524747880246080257702939099128994719527894439722828526117361648236913823027514544862046712398251734066527697676237348724465158893599560473200351530224245041596340220963683429881340553208409699594299261181212989221107530971303522686320513564226387471374456547377291192484997988606654540899634665450162274963086331783789860908282085692296248300574631527561763641974772756130570734735297575564567681595756096492735284720794891113064512997620639494646662790341453069978107064092657029168133504185408209},{"N":23360724885676198523522179321150194474267520026708517257764444663025119039638464657158724624502663558960702469988070676415660798425916276572290617437202837750858738892140118363926690520956187802097449221385283612203760207950600195667994976400493623569930090999021596112553157677485561299069991215207522767873493631366488446241092099654975621689119086509041077742510323711222260189730828492291459421830791540197321337933505867430138627984859014648102694909985043765241359798051875756951108870386862501048751981261038842763679815348130953290890391440850806363449637432840586263665690832227799688631446932015796916844537},{"N":25572476038149983843824758627743773292157542015669155545898739136432359227667585235619146413408812705275735125477228881724887114180658812229689479785083051083069428146070988730518675361280497876215801249358736365876007532614766347833762716625529381645528767502376159614744663698030295284120589012492759402983796882103200388651743368106596836536656368370930363045639317610411594882976032564820311800297421945366798108347221120736308176815503106682839506833524058020959093518528060465861144447540812579976237229589574562145541453749754749768478003306870660214131556451734687719631047077200787163529663274266186702479657},{"N":22679491499676926565249058751269701914370165376325885490706178594236435587374452393672919867257890172146499232592163563478749644823548404207107209183759523050603597049541204457028947474998785130219644182203008088877544305999771879137962239304258371157231174473491797491114277983084811723764080082851754276992307408859865524067180300336894890064430698022388669278921501809909740064260359142339540812296913591956784925745003590749703099702370645409020780887758983568638652737043891478141095930983089074418014910987946825193073588506986312390146214478478314600989393866198945700334073322066709926152728868061176019551541},{"N":23556951187256713732039305973238937631620385080790804249029259279472926645248156172448686117325741554381537031072742207487366612992119859269685828207319515666102872111546619607137952974660084980511684952594879342586512197525409799350424247192892012163769784591542546626323584978204193899561072157767856334488337110957680579926475975853118319141371431419486620931003438350760541975587261961199260033262263106014958269750801811225868080849204705441859105664948039653986722714354940941410686784948916936213417318953574086609821961649007609305029496977916873440356977063491030736996785241653241262171162950673703965399497},{"N":25874692591276389940909836821933328634340387691760211719857424847912710687202655208899136151842265948895002254373718724704209721944297143062448179072459504026936041473424765480639475272190837266572978737262449980766383982513621598580661341958135147571122513631091491976191663115339463730624237942100977649124658328431032849468551008597071378488661492324861414296280692846039598797857140808360770338990664282941023358641770157837364612463858095463039043959476170224596463891235213200808423306885708639894810932553685021558027739945539621344374072593175483199343233185955959027063970833388545231587659014590298587532269},{"N":21093015027631740022404443614096248522776233243516651444497036871175728958780883068858760981924585432192986275662870128643941927265524238598903061299795143929360395711020210769824764384718922898979318706735662563638859312024117764087176816929100038836825165997745175858151391747552772916358596447916581236137266690055236206686429983418915105841208302705945838725058954761546083763560226985859597874827308926656876419352353487645531847757035757295720869824004015071252605178819856102760159009139713396577974830023684477215548955933062314225333947463154019890073099705030557644025494887348484646782031863159015194484417},{"N":25298229297396047246415163429032546137139715727559844391184017906947304850232141234045323209407471473714145852636924268416866274482603754141415609592221706725085407059971638122009913495964543366119323417218834638913881087432600102264473788528537095668778412431377856067113698729914757144153775835786313302871273438949909936263664301138604696985912220658568672102041006541952444982579070062275651333990266954050520365848194152044834016212084441028573044037025009772616765171118784908205140185837844772749992941537017860827787097838183799078426827486346760690086948873222139803967157701952297751113063507286886770253809},{"N":27142202438632787162126599492908508783692765215748557510315014134009044742375492012422395905792294364201376442258017321008269356413320158807932162865700040957744157446176162447390298999320446062496836729102114052332958615915307193716216287036998207324413342337908047902088094382893405585342830460716335897834006040665407645344104524772021574862180664953364488173834491400964015536206179143781066229852877159880337660767454184922616386524557470530917791514588890903382115919687896218697262329973216887300329083882938499296413225108475327673886217363092593458630101782913564451822536507792690041998191978031482893873661},{"N":24506900410165079432913879286738242981557799447704277709132563752281068885918764244597103897934251933625444124974453530023693766922128717584028552755128051187819589410024704161034785358235535327695240184593017832269373629062497324651346586921679971074785452914954524453931920025017233873766495332551435302696547239605953737313669053194482788679487077465271167890491044626060923037626210805459313170671202877996680415217025953459280403666974895608025476083146334864242075064839862857242870450430867849337473211116054259839281123892458791925377357496234454799948092884977174468592367921171996109259120511593665944142269},{"N":26694966767987840469949338865344547117483340362831650227215482575365406012636774021468648984974992022743149425563486792907591668251920735101399223711217247824036472514130615393737405150133409306326610912172081216216331513707092964488994949651842782342704418212963772590286378010081225253538245220740244206602153540135126863052186543426616293649543741875882042173380956119737322204906042367710990417544800462728321639324791151406955584010061660628304199783826293959912579926890912970052339895938137461119473504729752401310289221600181057106776643382986556174592325963163204522372078262520351770361427042538592078722253},{"N":28161406783438289776782541515550232234219338732182263528677255680862818571394539837092411279908340595856411618560352096707955778113841586575489526111758509944691006867155143609674220650793817498419172979829028602046249597147507621299153669762040424244341554256616377217119563525915851719009321686306763607672801085326365691030132510560260181669852932393003570340516931927914922146799899039434467722922041925474101320996856938035131446584298134298675299397155375412990353784006913691603024110559796744887732721945933471868150638226543773483734660294313186275340618342717882057017678734282256333631978096376709630195493},{"N":30290385531723706663194155723402482345164001328034021287910161482488063429892351584916277391109894294446801833020074687889362652138426091460224301803948089690115686705682426193759251182110547546779254274419781083851169949275087832187538168815749507922889270386625094587688358817642053715412200458038741309360104964334706289126542952674791148655002683650712544232003067953586569445443104249283623297733191839471659254940888571771772980381177972566220724293577306168494057111878161156955456998298372496716136324267059071403030493623531599851487444134766104137251811774500492630476212318493040236485031236879687941684761},{"N":21891762840438596060416034930044842446937758373617708235288562429502315391645647044939378215035677465574183685957522821315454029977571728750605988329881847569313802549118091978526315133726370633285214423147938264418314863217805659876561184725718735591303337902948467582966199323804114988231963307083517180657041313131586070203747291724798899561367507615511932716092324516747320587928666160741969956121773346301706809405054989477031949248189136343469258532041255092588255241987397760849320759799542054627513230744643622791455964220513319415609245199516100422991698341556744298439022451385568791478794837569530013904689},{"N":25360934335416714794999313991057897528923718232366653339706494176825638906694689891746545886915964196582662458688535283322287088397853865709093712398485753916163063777301385991907720781358632265326870516346689492128442283774600103789825609570294923480202759046857115137927714980847316960609776972337028789163184648676367675625026306027140091761009104192786329465543720196130052658782412428125321357130192023653185727111578488774341366834046035305712205910649341950409228079277410881842097288924692206421126356254520404943323384573694119449632324221088061482676921038116252201661916622983158849603411299895152156469481}],"ECDSAPub":{"Coords":[92492306118178589821640584737240636977398594678247616965910942704932180187323,27954057508764275913470910100133573369328128015811591924683199269013496685879]}} \ No newline at end of file diff --git a/test/_ecdsa_fixtures/keygen_data_1.json b/test/_ecdsa_fixtures/keygen_data_1.json new file mode 100644 index 00000000..03911657 --- /dev/null +++ b/test/_ecdsa_fixtures/keygen_data_1.json @@ -0,0 +1 @@ +{"PaillierSK":{"N":23930233287283899271771864413305422456138957780711273892670074191715648409585503033095084345383391541524625291548041741990557564183855401706042293717552023237439032182637019639795919249455653535670614575331737610284863144094845900714497635996654401300216924764570210541950557336240993007183309433063094227377624710274228010652758134777897718742178998545079447283838099902510469006366469099975469096355736757507201973304413688395278990349533350163833514531655073848517781662614171483003731680841330633223244205178982328422170273570503713081265847261211618499950287557687314846590616484106774575999250148317390509484773,"LambdaN":11965116643641949635885932206652711228069478890355636946335037095857824204792751516547542172691695770762312645774020870995278782091927700853021146858776011618719516091318509819897959624727826767835307287665868805142431572047422950357248817998327200650108462382285105270975278668120496503591654716531547113688656751738100540554882657085156055277574738768917123952100316530725550908644747452231188839176032305030675216428579800880622045367926074519576691554576481478819003213525881378532266888732131750479170727259561318783487243810779611492259253171062407221253763092683460860198262672146170687159308412065832323010774,"PhiN":23930233287283899271771864413305422456138957780711273892670074191715648409585503033095084345383391541524625291548041741990557564183855401706042293717552023237439032182637019639795919249455653535670614575331737610284863144094845900714497635996654401300216924764570210541950557336240993007183309433063094227377313503476201081109765314170312110555149477537834247904200633061451101817289494904462377678352064610061350432857159601761244090735852149039153383109152962957638006427051762757064533777464263500958341454519122637566974487621559222984518506342124814442507526185366921720396525344292341374318616824131664646021548},"NTildei":19461028678249357721701139019984545699598216253588699892259672060166427273458875608319855785678884811755179389274380053495578644060470229307987007292965327985966772681212738091909180148035785695413643708212165777295662698493311553457174395686873169155288384255670661532430410131045712913078128214239252258473814281283319061613409102410606683119900924722782015902970301519339718368508022893331969649513655635811522767629123667744907556474126774472529158147258343482417188228144974952598132795041139358631852141986745214674779692377899411672630850213748161088638857089501019216868292821676374914063004957409393293909513,"H1i":5792666313208572350705907594949414590804636531753541567087068453778543363077542142305947911768781865374122070750607847515026168979710170113788718287465368491981654823945993941924700096393523941715256095048825025361038086570514643251828085846380954791657627403414038681940866434304045104130214177360598208974353162505514170835103706979081795485247158115653501838694614859268884296606546104394637012764653804556264770973741677326601115655746125293204398034469241183574629519235451142797709676366285591723984602961129858687877266469708766607187000988412118886394000517917001485137799190522482532376333362935442751367745,"H2i":3578111860663702772408903345930659472256129868015762875031051677614699117364424442270785915866444756532836287879751640816575659073006676007210405202315496945346450727441553016187592354415793891110773645408147683476571812485850037389853330648238106038729525075512542830213816094853869971661719959033499816133612736102442725651388405183329714325258711655979055386253406319598230253658818466953001815116530962213661362799968355793928849708876651937113231862631691372187008559216884922263381652908899796744393080985272287681952842592674663712445064149288160957033524932550150413325097150870149209345404214256294282382085,"Alpha":11421071720691985233805931440613725920647192840657306004580627664269869560827359450311849288274035445082830308979661706753108048712766307196692431931830063360703978457192789078600088154454453923447528766525917272869231453811378073992003872441820913146901968708891167890273179426508931612939315210420141536662858066164555270207634588140969207306567894980319084359328176222470944215148990545719044600126162705080135986981147555994772657029718950668109976569450187736404100221957582390492136834255108985799466784705512624569497708820941678094557313288115000789823971847930771259280468016904034040650165223964465502742163,"Beta":4227530880403545440038476922105110261199537465641999998158148101603915605231937688109728431992553740717999358378275263490543703125096499417543757592701897468657628484096430689758261242530422788974112689990440998814106644208884422045041519433217236005763161899441271328933810953174242937025629868477234469201962721397475711644378280986530924591451805074246910811173744333178474233373419231266135117437995644802581087590961012020226698544189434580409698374958610263938482416302069628007660903039729910120878609160294838371096166505152238228269549996232209744466071160336256098002053827877135524242668985610586518309037,"P":69148727022965490791371353344188179096380205628223578363347845412422456543356557096766868185510445198293123561559310892475561895225747211013646582990901153064187509486206820830686069751777027208039340667218028595066917519852526144012481411056284833957995414832693297161887219241384165301228065443379819309633,"Q":70359316491054176535495692674347777118526215106212851796111499381496549337314923687504495752117695325055665155415615099586640262752041948937762394634356663125386298530536960357064450956605539549770693624698845882927874489981293210912747793431816752540230899424105324436139249872533904838907087453451890367169,"Xi":108436151147340935451391561657404920031102047337332505756523480128367229972730,"ShareID":99910913777216787121500121711080713911605201308487494263101624819470958719075,"Ks":[99910913777216787121500121711080713911605201308487494263101624819470958719074,99910913777216787121500121711080713911605201308487494263101624819470958719075,99910913777216787121500121711080713911605201308487494263101624819470958719076,99910913777216787121500121711080713911605201308487494263101624819470958719077,99910913777216787121500121711080713911605201308487494263101624819470958719078,99910913777216787121500121711080713911605201308487494263101624819470958719079,99910913777216787121500121711080713911605201308487494263101624819470958719080,99910913777216787121500121711080713911605201308487494263101624819470958719081,99910913777216787121500121711080713911605201308487494263101624819470958719082,99910913777216787121500121711080713911605201308487494263101624819470958719083,99910913777216787121500121711080713911605201308487494263101624819470958719084,99910913777216787121500121711080713911605201308487494263101624819470958719085,99910913777216787121500121711080713911605201308487494263101624819470958719086,99910913777216787121500121711080713911605201308487494263101624819470958719087,99910913777216787121500121711080713911605201308487494263101624819470958719088,99910913777216787121500121711080713911605201308487494263101624819470958719089,99910913777216787121500121711080713911605201308487494263101624819470958719090,99910913777216787121500121711080713911605201308487494263101624819470958719091,99910913777216787121500121711080713911605201308487494263101624819470958719092,99910913777216787121500121711080713911605201308487494263101624819470958719093],"NTildej":[20539613942852364097890357541124859329931817468396278432713468646303963073659662742703665137736867247354367523800071318544570641421320510992705137876681425752810096966415479528824625129989063402576946505816887222102561441464103605308386975248012283762854115939987945603503283072741824666735245204091384515192454349252950007899626081034649919068642018312817079235168086885705851677572363277983076857313399016624874649811334825694862350059490166759704819411086564625186038339099281295128259092469609539775245598320922394808913338827772001777479207381548603315272620456484970681705115865233047669675602308688791376160589,19461028678249357721701139019984545699598216253588699892259672060166427273458875608319855785678884811755179389274380053495578644060470229307987007292965327985966772681212738091909180148035785695413643708212165777295662698493311553457174395686873169155288384255670661532430410131045712913078128214239252258473814281283319061613409102410606683119900924722782015902970301519339718368508022893331969649513655635811522767629123667744907556474126774472529158147258343482417188228144974952598132795041139358631852141986745214674779692377899411672630850213748161088638857089501019216868292821676374914063004957409393293909513,23815206664659393600414832732918591362081086959256855451108811883313935088830793690110550688160373127903180149093000695761674277348327575728255258492470452704258920461298225437641154249481888087192237143947805411796310656512191138629555279666557122333244803756577286887501632314162770617970064401783626962319950524158923845138939649762251756759762119774585338772559055859463599094869423262313306255644927649977403492926253217608523813644206820059309357940964633363130901166057002430269910921882664166860038861390305316020579398429144038386189480114288127704265879389663380565983482028227028306457603727009698486364281,24531363009049563762536664273685630249930678743601473345646756718446749360580428942513295608401046098557387011967587876621178423418085640157221932880387840241062539585907115950101921176093340357598786734576629107604766098059509560466283874031181440387973563913507733219768477775440248994272649062713092103053254889978195382189063452107439308150731662099755008823588080977928436274879799764825887538020606485093127463680041134931480024720440536560752357773730443722294290727915022250638670491342013254556128005158924861347226548459626859027825687870031912255326425000561908947972742109607669897905187712585858898757609,25485947141960036800495601740358196336268148055632283852581334267632567089581351729697672659186150817483946028874699734841543360085445274610946793774678284845142698994270979141586640525566502581978495871744643885460820923876472270768798335817566781711314773489485670479771252073613546268231833675772584402239718946768734191504723089294480532048176604551680713541748910822012363078082926628834536634899606309021451196325472880525430322895659546741570135136047631868000597393506058143850364801619503318165686086392731222189995494225633540472226098357551602534472541794408218767265775850366289511546336446350346021282237,28927199961592509462716713052933904239681693743133323458100757563361525410670677174848159248824087482997906403441479071298957717300803186875289912194352025314864665854179681659546207985006650252942140268140510157106320849846175665072784539119695315757729095462689260495430463870222739869312073694346079553731438032339737072477343055235278557275309616493517920166164080693605271556685355062728635594753076381152709174590915306592547837200121302421882042327338955791916538647734045471143845013412592155994390976714634271247514800401724247381959070976404354024140134277339724455784411154537706347451440209596089260579033,23535119694477523772171748044630208131923028017288499693412795663706886468394056769073862998142660508474676105711590469240299300182072142961838102383606369450702330959729879893242049940029310408964084662077585876233411878169942718467081776763994846585950049650660912827541883992039288017630464390592382481783566823924532043610685633953209522603678841504652207254189077646669746333277037092923165111872444873598439940966325805716105630151638779643981500665152639984434504817034412086671254173379166038071662889121653550757613052820175939040916661555723756176613161036717523938816196299007092417098079561970714605061629,25950783447263038071689830748627856944354421735888733670277679971199180982562433131778324823115329151828330351648021612294094370722267669972986008148650808031918722892417970047773133521052009921040352676366121022268583455702531977371124075420219730460605780729481918672698487964603151661149289116143779941433746038933525309985350586367303720987487112290090195247099032317451409521767630753382551078895196505751734814139673689437231496521554705226938471456297964527299627857211400740652357956604961830754401147898467475649318148547949522809325493238323065337997986089837089904293908389128632840557033917922339991780941,18687318215344566555182740902454336428592486945614858718824661784376438207943593936740995084200358460316665071770681463630810552799361606949595415859491617650913620153502889285378972038135570359724693463761135116433672709408902151793979112715679738392883186006369274528906256519536716049908878346476950103274343269649895419042195937774381514132210454482820166758270346958078142742840173830940449171621914508101385104081796180941351697633772994457709351610367195330318869580666697900958479010130985251846923421963647318437209519428820003347978947799013079168765159404172743072632243706939700207639779907975142224264481,23171083837957860801722218699383337900446240030786871268841926233540016534306722256418697981846104677203759841627977766724259030420015851980511088229043403050763668171722648141766116654882525867416891436685059276174192868946692072206824573955678962077288068058032958478942750338128252470165933443869447212456023356245726416751721989152798706366691818486325734110680894776063318626260722657549472271184224308146689662638536101291469177898475337027531732897213355102104990685266062044811809193138366772764276162181116512200063463469172637189164324496242489479899844513951546392297220122152709400797483802836017803985829,31343857270714098359641269819793471247744609345771779520849062499842222751853736635128030263011267623933026775894009843057499037409921342064326054830123558338476304900840753732976691522721379417037190976719048367738172877422341695489954487825668390415147795382659776979019893183466662138357984500601883268994989224933833342232607751640920642550766835871191739404896219865225614116435580799461951708239551693029017567595268404121330207564314786956323833427106966279493560190075571199071036639702485305576334075428484139050116713328535867597124971991546934922511844853709001583656359284723717084806850145785405536911177,21157487427733991932564510362138492162446873104287756897983482468142107066461483198236006898398559574298806811271053872211924774119515269456039458266616445024300383802406544466004007569246261860103312006457776588799344222340569710165666518367783547810282003032927364478322210948885423703591814633243286070072754280297773344097615910071723846039979528910869815670975142743376293197136856592859188733532786144697373533341877747464753616005694543102759948736736802569257325101204596297349394258616025918915521692968786299735438817719576226325356937526633071323693338940757362235570825853130085312301448111119042363796113,20871071186633559430638470998115518791893553646420368867902204568431630269565952322291766136370093127894084798814242475456617969102595313205728405129168253735048454253508700456761223106599134617920774227174015124829476988377890165462875183814841087993485125686632410376362585538078467534668954228084080919739417042353928509644795709201564083148094079836306167650314513450129297783489119015593642581024870311297891618816623633162063381775243950740681581620150958717466968747843706102214690157071025611480716612116918336154774385432247274600064909320680551901771492165221773721500541614228617829117370166464409020423677,27392140202372139560911530190722295626016991167776777076251374167016701252229100335980281077736021393527993281083564981442696373714433732500818431355034758384480955155409564373832745499649881975977124862697809360957420580753883129965594447943274206109113518479198329538838000642865155652137973709624008263285324174285285129803357738290385065522262059795474318914719823768887144641758090777562619592046692917101170170722723905514971631800061092086777420826999668590868568525034863406950714560799453233548147404988580929389926995856613912328981176466707497680180241272497358147647189027922268738449537259460751070153621,27430458285560064975603737623690566617914765114564307656159371148918349993794669623672608540855772729568670170546349850367039352526804750358257162362490778729908291097260480430890476823722553654389178498566668573496227008913481934125881578164602723285712928871252207939941804689355173665470036039114037118963971589320342018774107583274314158608546842149328506685304690959566263296291871998398637364399822435359987280203416832697098234360106966146607816540746285266790106830402077656904149244001383199485864465648143588026246539864484902228828598281873311925831114015086450712030764672165915248196209070047454495085169,20958576649034914977467969756965874238364659071947031154211972997487243461262394795340258789930977809611131615831278870909123144191655991893039673506539165135637011485008482874021240555941833074286915507794874804218274011487390148860550531668300157069443584231888571925159473970195937554740938933226402208131160317818926784959057391389980505131685522579677264162724011263439981256344785140426649255485125637348357522582511064347878764724812085894898146080695383734063354384186594813474135513405234523117338489484424618032520881618202129068318264606277435174234229102947510033247339629069254901430086639327996737230861,25673210614761004254141737312053451635018146154378993341101985326929566270344015265597835170941666913606119762699769929117810862190840467973932188558749547474174367822508601158829928161219529997833862214002106486508027112865708012732033692783629855485545330232068552007350877531730729790772847199443436084419382562932662568511421420283558235026303217907581598166628555941188586096538364407553738314729036218493332920854764055946289816665260688813327844579390598566768671973314358968068459214729157676432241630688442073088681756498136814491310636028421098965714509622937097403466307515165856202257786336739101389349089,27062431131775909264962122516003720577621307700606752850978674545503762322327045712593154396229756047740198870458644425173406714147601486563284216353367017457813364860861671576291918230182938220436949095109018225648486931358793025228571750572403143070647269508389021099989559676856968002395615757641794675119572488971947338527037552287756390904188517823120698354616567162661395526975254448758091053074808436661809101512025437321837959528689272191238705432334775200965152419124620293521962173467865862080429867958898040527206234108561471429991355210673373595922083144022410446012714221026174220695995286555692560595981,26101397013404440939950108603288565551073409553356897393691328641679505760230621741096317929709636865532238670826796537369580597665138924272200816037026280780915781305836081579178356868109017075793286763556497902869947712856535743263321959264839901002581734771178344662509473227839268090064000382806059250315977679226653239225555007655990623485545590336008766750972486014525144801720879444739045959169483687885427725508164188831961197284042818573448808100923870021600896976125650269597381009562192855793477760166114366163011349461311146903814241124631772470784181050979028948750586113514587005436500903242591757553293,22437602225740742482465534898349205983133213895660550238212001804732032977697798637757435728694311659299624886491819969612531644822478331097020027346346025174540910579800256280214031292073085792970245723432769912206355626120327772649905875827091190500315669126429992547075064736037570537735332469814000462556933603719315364923773085086614780916637137068518726889173784282955430621992569759561719528189938429235007732504425905045067985337249988673084527372002559031400047880307427208848753891291386460253720313523072063965808016289774609282102972264056704286287440985034888143293816594327214769326166521224390393446693],"H1j":[16370062914568124684409954423220013634799944354368183091925443712820668316759795091290952642141219645055533606292548565759917746455430426634828957426644826424037530474618159463204943752577732484149675671820306363344833458247384057865310742915406677379586789735200748327711872632191061145184949312294612467345847214916930759229195852858849386686352293049987465485866498220082468131280135383612600619493426252446949294373638968518891137429993551161437309269629260378927918725566711632082553316166822070110359114229533322390061282040482480263995079579444943917107997110057038662405191417861817663789094790962966996587522,5792666313208572350705907594949414590804636531753541567087068453778543363077542142305947911768781865374122070750607847515026168979710170113788718287465368491981654823945993941924700096393523941715256095048825025361038086570514643251828085846380954791657627403414038681940866434304045104130214177360598208974353162505514170835103706979081795485247158115653501838694614859268884296606546104394637012764653804556264770973741677326601115655746125293204398034469241183574629519235451142797709676366285591723984602961129858687877266469708766607187000988412118886394000517917001485137799190522482532376333362935442751367745,14510201356793997359892744405553071944121896518459738320470368478827891282273167297002903311912769777071155241288755372185351193850631471716718530488323104261827697027757019895835360274243188719367049075501436153398857359555924247334095665350350441220453460409146684994664351725204034521761578947269005519140498383255606322844603919000682223940913285551513356600061526959181206093504072618536296265435830192715190515397064435874311583709516596584871136822289753837472532490128304199643440789002058080030111113389709287097531544417461853059085059819958060220257218705882557929843952675556987949500595639655528439052202,21994027187251658420706956116678134303619268245311594874227984400819404446053485122189884678892175444688722527594580466254690437593853064923544979570444911946308283663229116693350631331935027065689358169246815279257122823014594309629197723508317910829246255814111959552337648906237682616732913305786178221005434606679461852547394872592127050442856550471832240167936976142756988960345619830477159914332536955389792251800932867389016006568741180137556936582683389834385412181167798283357296952856933963222988284608097870458140102834156304710781157917296313315513842893014212063887070100364867105131178923785373561146050,9913834538682656788610829579771569556624609911472542281771864528920206652057360227595914694025069327892774241543292898072673087864732558768588752951687639831868499912733997907550450742144719953844448973554109420086839278177283587750852958353526057789017170152122423018814264172807655239353760715885145548388992476483731471865364270428702324445078126354834888878640191523880163270112743069852403951565444480363239177556818094412397417215136415082364220806171351930690164376890892251369372868624028034980680685551131786332553623705883769998271596791035214982761974622986462384695349153129828098712177799482890430520965,15464554656029222110560140639422624868539470020281691165975400448606613120973644407534365935510334228227263162749065335291017684520353168923100727746351715681760916446206803485743114757577242723665933043744987644589191843035807511863595701170012104449542518101585729174897996392297770818633483533801844500665798250501473521227123975005972911918718226524366806206633841675388137041998857549215313632375036761617534744890091542919972307048750757690677067439820416806817051344016166652866968067639055986253789416713411110543055264622333767216550525033482750914452894139691102713436731472281130988207399023815239852528906,12865788614422531768878171769038267076266208200249164027644212721909963715015912538682157638127903293282023380796412378159235431043017021949518573892381565899437599164703723050587964116914107635838030249942901605297513982608974593500166572552953195544515492725593747884602852061628830280449190167844572097543184555448060083835007200101317266753106995526429573085540857281097156159258319440414895242242967023265742835942344738184941128584859242462621792495405423196954908356769683815889035326257091875874458718611430785903143039161526479973858541524126951528796262613552089943663340076548393182371918642954593889432834,22194516202811321146792934079465991238594712937226367504517257988113211333368349800836879103947252405610400726941861867633710543721876626238467090611506859331575128297406631557631820626534381998686705168632059305910804423292984195597625141279765512951234238593649775486094326905655122386938572411401132183960062730500896105597665702000968846572795357957098192758080717128908256523579293163137417423771381528097786100281383788052729825837521137512379280310081930804124457815661946839040621474089357381345723789618079958299474682840114875558952249988571746058484000722421698440994062460208554903525444210802321182968014,2022329329707369117437055740094404969047484980501833952214571687130852032499620508208708908589247080600189902502365407836277381678968110704345539053376355432754797822267575827372488857681103447936055038802753292113151984972961755143427625893918328299356797405969999266508287378495280713821635381697950988327467894890827305051792226857027384943282520470216088404776455333696749084292781033264737672933515625823807581567568754027253581653106384383593181057349330506068884659072076739226363616897242406137010778123983315619151551375977509919335513557274798510437948502408760645678633359245877721858614575061700591393721,21638702445456858422878500352234793329413106731788942261751796025224145517964611169394617788434763506002565806620170893339110273126875286455095506459298086020278318872581385674653253080383128797980439557511752718258375238388481802546638936192461482797150514683008473213407715728694302414916863995043974867827876036585791719812271742103323384468954527534596036617313432433874380308883492321501736879178345427074046787174556058119038049586737477628511165980047288251497278209275581664775606335268904384984155864116270266473616061700061527150495070719210903471680082400487754898061609554671248760480063619759950744280907,20932768206097680299943959313782719928339866139959731166252002876096405653871733170637914957728294590217455322823662941811142831487382716004980657707514358763150029924714520812685697751484102120909926147024006189544048800446501267477163792293393919588659127430522309503845365000611784195390022621092266420671288509706282186373855655358090019051530324622779193478505342408854462043136412488215465955955421082850282626458587043647758494935495915329050933653468179762936320308005669155322055934931071589853638981754901315764484414249149121368560265856082417024956730272011998498550756243974623835494966366962683389714964,1365816667585940330490355905311774458514715320376130020996515573937571923987574784307504874484515899610747050162880466334946062918938639620242137371098595406424267003818882220942016240927776918797542668204898851284066695289242978919397682088055368818116198595348273129318762376760634794532531433638073562846988038755248023571028829475051882101071203979111269507596248527906600986677728810751499828436067766182628039345309355341295172437424660504415028913205507139100147921515616240146193076677157859750716375066201587358526136840334151066553547201088947345861316322897488659331106732575557394540428972305438213375814,5703448175361065536885380258834894924349694750000788978424055908887487214267289314410654116737467233333514153490994654420800717947051017245903088635547080581089891657444714373263301759995815635072257679749046151543038146531810310826817366207696928190231298874979984114964348460891792295427444943206125809938612729939665048974349693961742238426880015130297226114935093282566300228257419316454068258492582819117310017835605391570376283517758701794125467889060184214275911038527696714000045849219024045243597506828846590195831908281658454892131533791810760325400211405258812142759529523572815227489710851557846638137542,6412242406353564485058502679404605624009190790593030266854505291800626778702270387175472290319448965303250433574173375628339895100997329474893279692868549940279796264731093585208695625011062617868491258157215447275957107991387222489580499373804335870682739788296835432969262878909434810429803264643527538555130662379672012787064972208117475596665593916782896686056579449802576468324812730306559649834202797329883549294599723290402017221639617907711497472325019619452322282704828796586508386419927496666562295856731151167316262475184222145101211618002798513055006067228431048839763646095282531119806559583105533794495,12506213831497706601305625665856619892819919408470741644330076368184175310515183251146177621238406207206410185643656979107225155831507800032694528257147716038515158570256044209419514879851010106278924359714862316802415670557334433034976750101928783991744583819411313589306343712690219032368416678985323530251239318661396466801994308940886752046080901718450406046375904389766893043894196541576969928137946704159382893563356338387889137855413730990126192021766856444171515497507122402917749807424621383187173538906785892654668489198127757882153223185090960714890345630801099413698632285321494907662894187137142803150791,4340320683992731212484211057800765907410470847269768304639037529290512671362801376775768288042129836088810539204858832843247178308000345604701431226310915807542068901686097542648829915466491213307097734259829414895234796525272600474326857346693882386640793824277606043756669695477090601330450743232413209505539149906338741119182508496705355703793044044384724643256986023764031438551900073624644692938223394706241422593949897781383635695299729171084301185179708550600098470031089086344919627503113655735768701217637285566867914251954499504690075652022468818725559007318841314414541437592229352428286215595483845053638,11992304082547451264970842283976418853821301172975086658682116387543359417074268643442593212371361490968819128789238354995117145993279593426471336648259583293294202599078859260437992548184464009386152763827946804967424362206055435693041324410893236957405711025923054702040161696386453571055246924713260145964584750230359074777621444549946362450468684233332414284037283955916761049858000878784786268023500095161975906495439332741618288811384519280375489794382891880648564800750663555801045203854227681083222146920912455217541211811955477767635787030014152643158711960638325867606918508708678622347924499914937535267162,14695333877946105505101457937623624377562698430478247685331048607650568913937201633971254630714736577175024535322415669442798271475956496536083972430246897654017678266490639701809689918981250971730052435032797344400248226649579239038593902835536123498617918666329121083751772876090103853533035181736615043011673643017303605152279678650202512062770466963460251942403425462061196179491356440328364636048438335959347603428717042954470887883300891927932651483741068303515425618933688194621659816079976510221005329843899476003615861655015952079393164902282608831513778303062716347528913475870793908798463564832083549613643,6361624891550612817090909815430156259585522002511378700573226127309539860650523892977168943678195716824260472829831132024282728135758912178943090813161584286046605117495775878170654691942858452263763077967647297167266507685944611403131069163214134338169098006751105941940463654618427873599267528041887836331948305951890335742121311832653316741398094161561749334956600724220433324620401615490879450816097431926849306846384679126203940987154375373597650036103822699248044107851648286585837187416880739896147553285981829664828869063480707437325000260106329487862878699057790666160151383639198420965781777521408308842299,14948927140088320458060089936345715166494298631495857212773926944790409869483957673185876995292328343640197788589621807184518806705821872810447516194927678801617268846361533345460325613772855110322242304569109406957894646727384216069315325052819333705539766154972989576988248927288284161530384846682668538198851543196833452065614949748530253693700328342501577900059842225778082026779632761099626760985225309957646536118173500439351182747667021029407125807666947346322131872894915154624415940708414296769044070685030466034270063053482191494419465005898644603408406165778424189251953592599788015054586521957253320449350],"H2j":[9653640790649475435050720061635061544335995170813227062007808546473167610366804040613054457009646767723479128021709179513573358845884462519136809844401815066012655857973373223748942767836422506840658738556503260986697250346171921063441485400421533124068250604530993514803166454504801884882297625678932746326066096923436475087338628767636689481829832307623108408425959669915171224014581673426602770656342925462023157550194457295116217893440581116140543598050947318929500123378985275492765280831578803707538206440354119287576298034238031692982504012470196898579719660373199491817717767711160029710911173725338539566802,3578111860663702772408903345930659472256129868015762875031051677614699117364424442270785915866444756532836287879751640816575659073006676007210405202315496945346450727441553016187592354415793891110773645408147683476571812485850037389853330648238106038729525075512542830213816094853869971661719959033499816133612736102442725651388405183329714325258711655979055386253406319598230253658818466953001815116530962213661362799968355793928849708876651937113231862631691372187008559216884922263381652908899796744393080985272287681952842592674663712445064149288160957033524932550150413325097150870149209345404214256294282382085,2562656890570835296352376205216590519360952576353253013086344012422175466058176642832419040937235521572328705583208834436813588375562745525224328564354560731400723267162764903064018742843839822445601315505274421672289602485557719646504320106522113645676636456687468751723898215955665240524139836668877382766583475339565598073690853848639545227831264115164596396262772422415214665834769274554577301336288865874066248890243346947740610544045667761548206600923673948174739356732295677551749947395385332556227074205668024351973201205328576603362256016900712683688241615565934460363012498930253514800348031700419220337084,22298685304249156715841839507145325522077048988910268345524279200863227356693376151033928569980263444962701165900514081299580440300365488019578288962534096517468902687907593109404000193096117803450936780948162440311950526862133749440555125530434273281017640257175046682563772712146188162909037424635371282116160809281350332585723737917537784267577381007869736550494661878733387948458251550312048040279754696568539248453484809390032249968377837207868808482658171733689439009562188880777607125039187467565549644537971596666666932158369857160883674108786200103009448463903055431989786220430290067137368612432640074310237,5879475324785385886080118453628099122983640585548725925692818787221734315336181255707999432375105366554548265736590343628955580077952532008988837072008731794155978542038914506112861039350525606157951017828660604272526605818549217659336563240062224484914310161520768881507503977620229908361541865095980430141394883457555144123820008061398004875781145432780438239985999952863196781468403423593755390719871396312035325131303835880979744451815683310530516197085535308856850866798018523735074120787646575912319226234213646284739550604897450763442470406797690674949855848424274918433854009972115369882751833585035329242761,18385446607341413929216752317617998458160849115285197433981133872531647462267817752048089105851349541660795002685652456000086108157981979426453705134803682299691630928200421847304354380350114763235863451959398215394354125874494984531309790405988904217354164073819568789120760731377280912128364362051769093741704293517942028826498663326655241508795914202031051398724638536523567800437872676476082333745719105291491676453403521845621182329449421075607837301738332926110019535833222421409565228043580701032497151738816862657210572819375918881851411438625526045192015060739626198734346744421593858157488507552447503219157,1543023308301318791291636723263661645234407352972693347930324541592073282303070472660827743672362126204249434834670307886593868303926045601951702434485524524299146190187978789568968092026789881246345813079894138764374868096047892517784410005345559357208978859029831295378789933334638460830863012154730679683049737545160281582305039520027158141403805442275432519516975114987511502563484403828987844187725357101956491714139410763551382100998178318863295224089354110436171289236674317711473441156004575613857935802947903186710273135122934512388821226072049093290647716152026391828419205457729234939199662889356527012444,19612969155814925927900736991694631498815639143900750081709470615537990112217002271570654324774711607889679093067885009086620212727925361021546388555967618760690930383917718167829905900473725102007606380323545403188303409627969907029774876076466652636827981089598601596821629485556381455948439528301393466043329774616323471054547330305463639720319551756652789237846520745512886328152641158526571443916940675394167134193466655448590323552123565655514390433855054114283235652222186673800138041449545987929749641868001910765212175435331820335256408276886037716378072029444719891008048297796893611911457701948988529229282,16728597479991680407332164223276251930971882378040601546182090035388885277790620642130984559023085396113670088325023048100279567479347085329073035696608554975777409036805727779421519384442869313567486101701856985975948368091166211269762554257345698853374624187196304439193724792774291722910128170261256918581442838390388813651239625403911503915460141004046718650178671549506593787333200145941149923809156438433492770338609398675185696331933468246886804722117355530728325631706711888199439210221397335620762682713255422110226515677047306270190770133307509623731091673964502293431264279055367772707113499782043802219072,6959317283624626561280838810011851848606573383456333866356771642710009365943896928686358713606049305764133589953562485262421030190625379899341516940088176438653144375343629199857524649360799157617467464667207079997090732685762910728717721600193091207478294785009859545546272657408615665578978698966309579302786158306046780048259033960048367018506262121833776982527433736628482989970739839626561164331780819203300647377931749431379962789021848504353274218995997754499900534324222498419599756583548358913120017762065234354717544865856293340540081744252368993926137398125931373959455585431506453093937785431907339954440,11707820384786665143909181917722140695066077204138675859555940823963085499198625584153264077484611920625749300043796981737297557284495008476240804003977980903028035986014301427047695461308987163082644181568819427026377861293089760745032220979974314071873695748444473344481739404234865330820136242966321355292830007655295383627072182012764804101331409332152687101319613845603099019594628684448783718018158413013589965095889558760502141979036830513073469713570347578185733951700672935586145889495063730457422516713768592535269075934288536062686021973569079600458124449475763651523966025703378628943004868525425132768470,12680113365919882057574106113475868522128522384382601197321116786250024227710942753687346378669117549887826210207932325610070970266526443555090342822407043741408930676918514338947859254583933603158241276952467805479024344654828575004834480980171788527657050724406198542408746742354531228386476751247072501617975174749412587537766151828306153888252035411082379552917399551115964687725743020641384211728557413837203373250893065347048255589312756928959773947595990023044227966600250595372063312552514516053386563033360883348059069724261103859193470298590631028566611086928803669676829225666250863192855787196720603673760,9019657743968669607069997647539968262488442864840563257526073127843215521457164945521996034009113740811008633126128201485876365964359243077677187550395794512954090076458031575481109943534530172796807658845833964496790520042423061347000207701119849250007073432625973802817311058171823571086584900654526615124913824393095137876668486739795620319593113487319306758076868523633806281732675535191877729151172494277333403640038019691517232275137009983348569240826245496914996509643617684093222096189728055561573909735610063401084000594789204303691795045753669664876756897469727730211469836756344045393712182476806348262481,509727692658127329234819348282810282823358222955712460979035976368760532139665502509369544837059902335508770138210475703837249689840377266421270410968940058538125244069674567645496962345390684467242600183265156396927471901904730403435725549974213712745153254130090979413745442250230122176329142735628394058559735078808655502950813887104168441824680204081093532561399756958380811786995754253778833219233414597390819387529718886819478101169481249247654168746478268826094117295037052091370216680279456693786586815595643437522530315484348520350527079378100131478937805285900851443697897872168020710497135465069780807687,3842294189873253197555038084451026657880884971357471477404186912118522652991181539287485996470843289095459960588932515934990566949413638625169611068786524327230092661471599333492933504858312443510340452825109814219748343465626968500133039743956522352452046474898271016421645025612565409422475581907506677274527441400119913285024497410632467771786023570373229380492185234340140113773065511943229164821322784643171443642045254567266530741214826934397811463635644370547054062567012016231228876473774669826378368361454200858389911185989849447377758286974943747417740672897265471383352127822433439855380640722238771424561,12605457156020973444763168611522695283402376793806466187139735133742095649198553225011255516233464381926302993187553632508703365300132776800901755737316341235931477791227746456204649162573568121476427289406145613748980339685673661511024577823438911510307584137593479079190723698666793670318162798116104492476114229973922338166221669934104784402698512349426984473431614385866651807327515058966935011035923319124790759086336194395000632944700277782112868323483780168144642250558671981757792078139349701070563555668082796938131863328410412160150471825619049694173807371104601644825755844313657731729068891163705563867555,18221138784555811053296911040444811422299569221370698341523745856400091281377839778678778328149110548534138934160836481393838346908432982920562116626677959686450236292050295531261923474882738697393510842972966810110218027601675376030586402861098487543863740705626110087204717386977952136809165092530095562928623301371629208844732733664526090007002304626939446606391205626126192870615394522174649688440887870385705569710809581575204639778805466412903927058799148697158251622260213645585723159916754663707237605872275846686566820885362722073881904277317597403167380835907876296870877478221646920284310430371934404822311,12694464409184116198175216134705674117698495589897734763290223249700439697747213221960704240817308024376618649511257185410755720163743943692791263666036558979570909072667619923266653682384882259644954119285287063471541002032435823410204495631358202104734018269537402171761572193134509812396214919229814690930600798504895496564687656801956575973479011431776352638782289114699743527186781919502658003154674450714069197242726393985114420810547684173494018605147976810102913734546162705259030658206284298418521349062777115509219489672039075093329236647292016824670535351144784388483525751068225542810044999850751665224074,4201765615355271720665237538919680402664127861292891404309962354268106831635826650331041297039291644925592311983403700464576600435518882156854904159089879201301912105368413055078865795374091914623189759593456721300785707753873135853357294442043908826331857106210726005526370024055346666586491341046296314798619327898858072624823009991437876242325624019938022318176060332738994176297193724805935694309014605422020909137014676945305249645201662101488974241605863532571828450201507584679493905057922784236072997143238879363168245889469038437561181276242698369654938178116001428367837409133015026021079614840533626761027,5693818583095067032554302348404689889827513405370432124730856324552577938645345928545249455102636900381970277642590696482249653647276002965730520652542065397111012479589269283364878130676178205766673654461574816233876555267291293343730094421360715866449358521574582941335437947403997555554148186986038285554629922609604751054748762347310142603219823359220130919495866316927224981350998367935679597793982889611172206443879512553133682522147111994374985808397513270886689704297115982752710085691562031953231724109895260045500479387280386873351701423764105530811712645875225583048344423503433093456461313617037044573606],"BigXj":[{"Coords":[31961961449149592290215619337342545369164998201385135329342844666166714363705,64636392625998908156106021830673034903148364934246785109426074897879798496695]},{"Coords":[13561027879868215202586968035768135752207534764402067848160241312364043370282,31683215740694624076579960720726613640416539517460242899883851320256877874663]},{"Coords":[102970472861055393328233354777448191839076263179087526130927097177204776801806,19849778771794568183958877322544789075545226949228544528619329359950140265115]},{"Coords":[8366486354279759555693815735694831293559828965602250556327317858912116678471,24456250444071880675953816335612932507033433175255559522554349078047625549678]},{"Coords":[93126246885046599201299142306317944158536766260090154798797491446571717586613,101632074177392193573512178573083324222329391048269493231849116848088552218375]},{"Coords":[45944473181199785374833853975473363930687909609574532965286298616052742734642,49106561873713078177518155217967815241790729328033604070651886838013799968339]},{"Coords":[88807289702586806295763026580879412609419986472794654189482668002118698433065,66889255218792877467551818840857264643456782872798377645941824720058728156412]},{"Coords":[45745777770010867130655637386117976632006388263133845103488205463444756286557,58413618959379828248439575493421719547880693819703454359788283537541749522854]},{"Coords":[14931705718614911512649079486924798218629483414127465950786381421646404878840,70853895869521315016717813866703398949051565204254795550601147911581008651495]},{"Coords":[31702825468512650039750289022997764002837389172468049717092331147393818254752,90704921170203464181329063311130512192295590723462840980995045506481351030148]},{"Coords":[108133277897421036808605843118854356978565880360693563552498521263092161957794,33994893650793696043114830343063091347849012751372498052809673503667071259863]},{"Coords":[13603746174106309213882605187834221055267478293724779491981408043396477605150,47502402322605913877968636451206238145707201411072573659819652572960084227380]},{"Coords":[21962637032374642863765173367353663611071785709723940819398260699915154728736,65876190623954751874122457014542214494068664571689464338691288646258987627994]},{"Coords":[8139291295258406047002639746372064115101651961499427493344848502049438028449,13643120656693319356484507306610353728697986968072320539867387334577150577786]},{"Coords":[871083651129542234211830236854985246175496411885064575219875767816674532739,100904963893789549224657775356884044157291453214379932308347421012612568685620]},{"Coords":[98028745019433069815621229762947408124245116227553507407780733119772046992520,60367568163137055112812282822118701471566204774343904929920219271364583776122]},{"Coords":[37332951852807254347441974643993866127041633128152922228434313154811023954744,56046459898819968566785812285970001512876757161864884424831574905585289505077]},{"Coords":[11223798616675111197150792218010453124916879614948521844981845491687409376646,70914747125199464172751182264377339815163078089055967502760766110580370145293]},{"Coords":[62949410140974969962342726366577125978516456835571210444108422984760191628326,55668150354406094271153240357261264601037343235231498038021007487545647055721]},{"Coords":[7611358883569187056502001665501128526153865541559158134839099203014115911991,87617845479447207941483995353359860120852817257735643485765526341493112597509]}],"PaillierPKs":[{"N":25922769748919102678415192880711636156565612427571550685296776086119205445525743826557545692077634738129321690187868055737306626420419536394422682260657759329710259802294458956279773225258250955469954464209933873407784778802101265717840506851919529598154066919091078766953942869622551929743069097967501533345363150709912011028449270819442207860620552088412428865900112120786495620291333470644949767300948329241775121748888220588626655915013364614554467190860190736954650967874940702908395331234632114014125372505065096924932509595285205788545338407476139436404463823043865599023326570565049384032977060875483209339089},{"N":23930233287283899271771864413305422456138957780711273892670074191715648409585503033095084345383391541524625291548041741990557564183855401706042293717552023237439032182637019639795919249455653535670614575331737610284863144094845900714497635996654401300216924764570210541950557336240993007183309433063094227377624710274228010652758134777897718742178998545079447283838099902510469006366469099975469096355736757507201973304413688395278990349533350163833514531655073848517781662614171483003731680841330633223244205178982328422170273570503713081265847261211618499950287557687314846590616484106774575999250148317390509484773},{"N":23804125140052077689856128298352557083678652474445385365228110453726681237860799979845611556170894187976654278582576364089033396218674226546868809651353049956675922595541689542576794678062495339422204984765419389268325283682512000995221750412104207394441438666051694475950049774094896290106430636216894744335784327798634247450687264677393229214665686649911456587168142148024558282134024448427550922487022680890892554782651383972136386958126051377715096556862662265886688077689941967157694195467190297477735450118736949849327358586935699405848605265912107169200547464609552395233560924746135866463084686118233592906569},{"N":27732731445242071631661957657712700411367090291795241371771965432140171981887215839890743735562516245338158767440902124645306227526755834590210240211292920385793070069156192085968959067158127765511651425539136016999745924428061397793021945121990437538890398656832618417715425504589084090095239114803460787199036351739230987513003864153861252195944069425337294669643857426654756086277471320443733998616523518289821541295617435513033264977202437153989318832642208143170451837926277566396048774049270318848738844338850668187024045715008196311523744942555689097435377598835544336914580911633671909176827168167136470690349},{"N":24540078122494262833119917930091872139739129939617606686122284549157786865278292966087938309454800165081094474899057524752572006230843959997841521536274236615511587750039832014979332539924539915807860222967109230298738770371871063759834296194059907031260324597353713442284471130560805946122495294807423458083635025189319558646442212459161798625793784738344309603016513355951936699928410805609866016648244631951643648288242475041729105749202516848107495430809184564037582943457286768883109270231510808158554549441157152513493684930416951758705877335895250913277012541968048511163986915876606316087458297080987346429881},{"N":23068407873896187320610408658036992760323120237076281539139801143529656493030091268390954927616119732305210576479622679524747880246080257702939099128994719527894439722828526117361648236913823027514544862046712398251734066527697676237348724465158893599560473200351530224245041596340220963683429881340553208409699594299261181212989221107530971303522686320513564226387471374456547377291192484997988606654540899634665450162274963086331783789860908282085692296248300574631527561763641974772756130570734735297575564567681595756096492735284720794891113064512997620639494646662790341453069978107064092657029168133504185408209},{"N":23360724885676198523522179321150194474267520026708517257764444663025119039638464657158724624502663558960702469988070676415660798425916276572290617437202837750858738892140118363926690520956187802097449221385283612203760207950600195667994976400493623569930090999021596112553157677485561299069991215207522767873493631366488446241092099654975621689119086509041077742510323711222260189730828492291459421830791540197321337933505867430138627984859014648102694909985043765241359798051875756951108870386862501048751981261038842763679815348130953290890391440850806363449637432840586263665690832227799688631446932015796916844537},{"N":25572476038149983843824758627743773292157542015669155545898739136432359227667585235619146413408812705275735125477228881724887114180658812229689479785083051083069428146070988730518675361280497876215801249358736365876007532614766347833762716625529381645528767502376159614744663698030295284120589012492759402983796882103200388651743368106596836536656368370930363045639317610411594882976032564820311800297421945366798108347221120736308176815503106682839506833524058020959093518528060465861144447540812579976237229589574562145541453749754749768478003306870660214131556451734687719631047077200787163529663274266186702479657},{"N":22679491499676926565249058751269701914370165376325885490706178594236435587374452393672919867257890172146499232592163563478749644823548404207107209183759523050603597049541204457028947474998785130219644182203008088877544305999771879137962239304258371157231174473491797491114277983084811723764080082851754276992307408859865524067180300336894890064430698022388669278921501809909740064260359142339540812296913591956784925745003590749703099702370645409020780887758983568638652737043891478141095930983089074418014910987946825193073588506986312390146214478478314600989393866198945700334073322066709926152728868061176019551541},{"N":23556951187256713732039305973238937631620385080790804249029259279472926645248156172448686117325741554381537031072742207487366612992119859269685828207319515666102872111546619607137952974660084980511684952594879342586512197525409799350424247192892012163769784591542546626323584978204193899561072157767856334488337110957680579926475975853118319141371431419486620931003438350760541975587261961199260033262263106014958269750801811225868080849204705441859105664948039653986722714354940941410686784948916936213417318953574086609821961649007609305029496977916873440356977063491030736996785241653241262171162950673703965399497},{"N":25874692591276389940909836821933328634340387691760211719857424847912710687202655208899136151842265948895002254373718724704209721944297143062448179072459504026936041473424765480639475272190837266572978737262449980766383982513621598580661341958135147571122513631091491976191663115339463730624237942100977649124658328431032849468551008597071378488661492324861414296280692846039598797857140808360770338990664282941023358641770157837364612463858095463039043959476170224596463891235213200808423306885708639894810932553685021558027739945539621344374072593175483199343233185955959027063970833388545231587659014590298587532269},{"N":21093015027631740022404443614096248522776233243516651444497036871175728958780883068858760981924585432192986275662870128643941927265524238598903061299795143929360395711020210769824764384718922898979318706735662563638859312024117764087176816929100038836825165997745175858151391747552772916358596447916581236137266690055236206686429983418915105841208302705945838725058954761546083763560226985859597874827308926656876419352353487645531847757035757295720869824004015071252605178819856102760159009139713396577974830023684477215548955933062314225333947463154019890073099705030557644025494887348484646782031863159015194484417},{"N":25298229297396047246415163429032546137139715727559844391184017906947304850232141234045323209407471473714145852636924268416866274482603754141415609592221706725085407059971638122009913495964543366119323417218834638913881087432600102264473788528537095668778412431377856067113698729914757144153775835786313302871273438949909936263664301138604696985912220658568672102041006541952444982579070062275651333990266954050520365848194152044834016212084441028573044037025009772616765171118784908205140185837844772749992941537017860827787097838183799078426827486346760690086948873222139803967157701952297751113063507286886770253809},{"N":27142202438632787162126599492908508783692765215748557510315014134009044742375492012422395905792294364201376442258017321008269356413320158807932162865700040957744157446176162447390298999320446062496836729102114052332958615915307193716216287036998207324413342337908047902088094382893405585342830460716335897834006040665407645344104524772021574862180664953364488173834491400964015536206179143781066229852877159880337660767454184922616386524557470530917791514588890903382115919687896218697262329973216887300329083882938499296413225108475327673886217363092593458630101782913564451822536507792690041998191978031482893873661},{"N":24506900410165079432913879286738242981557799447704277709132563752281068885918764244597103897934251933625444124974453530023693766922128717584028552755128051187819589410024704161034785358235535327695240184593017832269373629062497324651346586921679971074785452914954524453931920025017233873766495332551435302696547239605953737313669053194482788679487077465271167890491044626060923037626210805459313170671202877996680415217025953459280403666974895608025476083146334864242075064839862857242870450430867849337473211116054259839281123892458791925377357496234454799948092884977174468592367921171996109259120511593665944142269},{"N":26694966767987840469949338865344547117483340362831650227215482575365406012636774021468648984974992022743149425563486792907591668251920735101399223711217247824036472514130615393737405150133409306326610912172081216216331513707092964488994949651842782342704418212963772590286378010081225253538245220740244206602153540135126863052186543426616293649543741875882042173380956119737322204906042367710990417544800462728321639324791151406955584010061660628304199783826293959912579926890912970052339895938137461119473504729752401310289221600181057106776643382986556174592325963163204522372078262520351770361427042538592078722253},{"N":28161406783438289776782541515550232234219338732182263528677255680862818571394539837092411279908340595856411618560352096707955778113841586575489526111758509944691006867155143609674220650793817498419172979829028602046249597147507621299153669762040424244341554256616377217119563525915851719009321686306763607672801085326365691030132510560260181669852932393003570340516931927914922146799899039434467722922041925474101320996856938035131446584298134298675299397155375412990353784006913691603024110559796744887732721945933471868150638226543773483734660294313186275340618342717882057017678734282256333631978096376709630195493},{"N":30290385531723706663194155723402482345164001328034021287910161482488063429892351584916277391109894294446801833020074687889362652138426091460224301803948089690115686705682426193759251182110547546779254274419781083851169949275087832187538168815749507922889270386625094587688358817642053715412200458038741309360104964334706289126542952674791148655002683650712544232003067953586569445443104249283623297733191839471659254940888571771772980381177972566220724293577306168494057111878161156955456998298372496716136324267059071403030493623531599851487444134766104137251811774500492630476212318493040236485031236879687941684761},{"N":21891762840438596060416034930044842446937758373617708235288562429502315391645647044939378215035677465574183685957522821315454029977571728750605988329881847569313802549118091978526315133726370633285214423147938264418314863217805659876561184725718735591303337902948467582966199323804114988231963307083517180657041313131586070203747291724798899561367507615511932716092324516747320587928666160741969956121773346301706809405054989477031949248189136343469258532041255092588255241987397760849320759799542054627513230744643622791455964220513319415609245199516100422991698341556744298439022451385568791478794837569530013904689},{"N":25360934335416714794999313991057897528923718232366653339706494176825638906694689891746545886915964196582662458688535283322287088397853865709093712398485753916163063777301385991907720781358632265326870516346689492128442283774600103789825609570294923480202759046857115137927714980847316960609776972337028789163184648676367675625026306027140091761009104192786329465543720196130052658782412428125321357130192023653185727111578488774341366834046035305712205910649341950409228079277410881842097288924692206421126356254520404943323384573694119449632324221088061482676921038116252201661916622983158849603411299895152156469481}],"ECDSAPub":{"Coords":[92492306118178589821640584737240636977398594678247616965910942704932180187323,27954057508764275913470910100133573369328128015811591924683199269013496685879]}} \ No newline at end of file diff --git a/test/_ecdsa_fixtures/keygen_data_10.json b/test/_ecdsa_fixtures/keygen_data_10.json new file mode 100644 index 00000000..8802b4d8 --- /dev/null +++ b/test/_ecdsa_fixtures/keygen_data_10.json @@ -0,0 +1 @@ +{"PaillierSK":{"N":25874692591276389940909836821933328634340387691760211719857424847912710687202655208899136151842265948895002254373718724704209721944297143062448179072459504026936041473424765480639475272190837266572978737262449980766383982513621598580661341958135147571122513631091491976191663115339463730624237942100977649124658328431032849468551008597071378488661492324861414296280692846039598797857140808360770338990664282941023358641770157837364612463858095463039043959476170224596463891235213200808423306885708639894810932553685021558027739945539621344374072593175483199343233185955959027063970833388545231587659014590298587532269,"LambdaN":12937346295638194970454918410966664317170193845880105859928712423956355343601327604449568075921132974447501127186859362352104860972148571531224089536229752013468020736712382740319737636095418633286489368631224990383191991256810799290330670979067573785561256815545745988095831557669731865312118971050488824562167648765850781612044921350806690323251805325507860684969277622397191154699981466619445268588090978301166006871082532919789287203722593737752225116735709772101587881307265347866706139907323366118945239783154641985307607291011166175443772324952238743175616676430861961178747162388784578332883651525950064134622,"PhiN":25874692591276389940909836821933328634340387691760211719857424847912710687202655208899136151842265948895002254373718724704209721944297143062448179072459504026936041473424765480639475272190837266572978737262449980766383982513621598580661341958135147571122513631091491976191663115339463730624237942100977649124335297531701563224089842701613380646503610651015721369938555244794382309399962933238890537176181956602332013742165065839578574407445187475504450233471419544203175762614530695733412279814646732237890479566309283970615214582022332350887544649904477486351233352861723922357494324777569156665767303051900128269244},"NTildei":31343857270714098359641269819793471247744609345771779520849062499842222751853736635128030263011267623933026775894009843057499037409921342064326054830123558338476304900840753732976691522721379417037190976719048367738172877422341695489954487825668390415147795382659776979019893183466662138357984500601883268994989224933833342232607751640920642550766835871191739404896219865225614116435580799461951708239551693029017567595268404121330207564314786956323833427106966279493560190075571199071036639702485305576334075428484139050116713328535867597124971991546934922511844853709001583656359284723717084806850145785405536911177,"H1i":20932768206097680299943959313782719928339866139959731166252002876096405653871733170637914957728294590217455322823662941811142831487382716004980657707514358763150029924714520812685697751484102120909926147024006189544048800446501267477163792293393919588659127430522309503845365000611784195390022621092266420671288509706282186373855655358090019051530324622779193478505342408854462043136412488215465955955421082850282626458587043647758494935495915329050933653468179762936320308005669155322055934931071589853638981754901315764484414249149121368560265856082417024956730272011998498550756243974623835494966366962683389714964,"H2i":11707820384786665143909181917722140695066077204138675859555940823963085499198625584153264077484611920625749300043796981737297557284495008476240804003977980903028035986014301427047695461308987163082644181568819427026377861293089760745032220979974314071873695748444473344481739404234865330820136242966321355292830007655295383627072182012764804101331409332152687101319613845603099019594628684448783718018158413013589965095889558760502141979036830513073469713570347578185733951700672935586145889495063730457422516713768592535269075934288536062686021973569079600458124449475763651523966025703378628943004868525425132768470,"Alpha":21037127350648374388265281801088652029507674521677932668096972451285996231583372560390764495469914786126011413858799924924632993629660624940171061024112299251424189717568873729271177196160837682095329312245312789791663239525186602963462814228741719981597884110393167183666436021997307470961622021308761789526984374862534269454240710028273269824919578312303738857215548062403749020848762321378134737482162867932557874194960936213444699033810544340776505472623923769317907668875486466780709709456578963447347288923313760688176855605033192292787928419913044571652157610603001644061045928905603168705318778522852235459520,"Beta":2620784159511461367171886970842804838285449450280528796198270706554768448066983426458938477218428089112699048655178753945042334912939431087154532665300910895985793015988556656392640752110694280023897672499804763851086549400515230420838385444401894283066443786614210233997085283270868429129152763086524741054653926783660179150394690273847200276291402219580006125344865836783236819192404514394880954109676925225775777662427087047027019348137937514179396480469125560039235921390200371699649598384379124973381552258204847346718889984433878301828063295658205048621272653158564538825996157040581954613120918284132726091877,"P":89475622537762675728974568335049172002891517866786195098747840534379383230181724060087158574801781737829720406781235075837537443923155550248596886945492296155799677292965893054114630397300932796636262282815163811177779224502417221555195284229849744490375693969163252199165060227179874651089638745637572151841,"Q":87576527499111845581088108234976855206250186847569142434666752945723582872666665689978488331743553189055342597852077583988889171934553793305799774613693851396402205385570653429086994140252313844417891005401224274265208415308267321557541823702935867617565116486094315681130794016272990743791558000742337398209,"Xi":108446049354585009563599188857823197198796742426858964353445534150139132351308,"ShareID":99910913777216787121500121711080713911605201308487494263101624819470958719084,"Ks":[99910913777216787121500121711080713911605201308487494263101624819470958719074,99910913777216787121500121711080713911605201308487494263101624819470958719075,99910913777216787121500121711080713911605201308487494263101624819470958719076,99910913777216787121500121711080713911605201308487494263101624819470958719077,99910913777216787121500121711080713911605201308487494263101624819470958719078,99910913777216787121500121711080713911605201308487494263101624819470958719079,99910913777216787121500121711080713911605201308487494263101624819470958719080,99910913777216787121500121711080713911605201308487494263101624819470958719081,99910913777216787121500121711080713911605201308487494263101624819470958719082,99910913777216787121500121711080713911605201308487494263101624819470958719083,99910913777216787121500121711080713911605201308487494263101624819470958719084,99910913777216787121500121711080713911605201308487494263101624819470958719085,99910913777216787121500121711080713911605201308487494263101624819470958719086,99910913777216787121500121711080713911605201308487494263101624819470958719087,99910913777216787121500121711080713911605201308487494263101624819470958719088,99910913777216787121500121711080713911605201308487494263101624819470958719089,99910913777216787121500121711080713911605201308487494263101624819470958719090,99910913777216787121500121711080713911605201308487494263101624819470958719091,99910913777216787121500121711080713911605201308487494263101624819470958719092,99910913777216787121500121711080713911605201308487494263101624819470958719093],"NTildej":[20539613942852364097890357541124859329931817468396278432713468646303963073659662742703665137736867247354367523800071318544570641421320510992705137876681425752810096966415479528824625129989063402576946505816887222102561441464103605308386975248012283762854115939987945603503283072741824666735245204091384515192454349252950007899626081034649919068642018312817079235168086885705851677572363277983076857313399016624874649811334825694862350059490166759704819411086564625186038339099281295128259092469609539775245598320922394808913338827772001777479207381548603315272620456484970681705115865233047669675602308688791376160589,19461028678249357721701139019984545699598216253588699892259672060166427273458875608319855785678884811755179389274380053495578644060470229307987007292965327985966772681212738091909180148035785695413643708212165777295662698493311553457174395686873169155288384255670661532430410131045712913078128214239252258473814281283319061613409102410606683119900924722782015902970301519339718368508022893331969649513655635811522767629123667744907556474126774472529158147258343482417188228144974952598132795041139358631852141986745214674779692377899411672630850213748161088638857089501019216868292821676374914063004957409393293909513,23815206664659393600414832732918591362081086959256855451108811883313935088830793690110550688160373127903180149093000695761674277348327575728255258492470452704258920461298225437641154249481888087192237143947805411796310656512191138629555279666557122333244803756577286887501632314162770617970064401783626962319950524158923845138939649762251756759762119774585338772559055859463599094869423262313306255644927649977403492926253217608523813644206820059309357940964633363130901166057002430269910921882664166860038861390305316020579398429144038386189480114288127704265879389663380565983482028227028306457603727009698486364281,24531363009049563762536664273685630249930678743601473345646756718446749360580428942513295608401046098557387011967587876621178423418085640157221932880387840241062539585907115950101921176093340357598786734576629107604766098059509560466283874031181440387973563913507733219768477775440248994272649062713092103053254889978195382189063452107439308150731662099755008823588080977928436274879799764825887538020606485093127463680041134931480024720440536560752357773730443722294290727915022250638670491342013254556128005158924861347226548459626859027825687870031912255326425000561908947972742109607669897905187712585858898757609,25485947141960036800495601740358196336268148055632283852581334267632567089581351729697672659186150817483946028874699734841543360085445274610946793774678284845142698994270979141586640525566502581978495871744643885460820923876472270768798335817566781711314773489485670479771252073613546268231833675772584402239718946768734191504723089294480532048176604551680713541748910822012363078082926628834536634899606309021451196325472880525430322895659546741570135136047631868000597393506058143850364801619503318165686086392731222189995494225633540472226098357551602534472541794408218767265775850366289511546336446350346021282237,28927199961592509462716713052933904239681693743133323458100757563361525410670677174848159248824087482997906403441479071298957717300803186875289912194352025314864665854179681659546207985006650252942140268140510157106320849846175665072784539119695315757729095462689260495430463870222739869312073694346079553731438032339737072477343055235278557275309616493517920166164080693605271556685355062728635594753076381152709174590915306592547837200121302421882042327338955791916538647734045471143845013412592155994390976714634271247514800401724247381959070976404354024140134277339724455784411154537706347451440209596089260579033,23535119694477523772171748044630208131923028017288499693412795663706886468394056769073862998142660508474676105711590469240299300182072142961838102383606369450702330959729879893242049940029310408964084662077585876233411878169942718467081776763994846585950049650660912827541883992039288017630464390592382481783566823924532043610685633953209522603678841504652207254189077646669746333277037092923165111872444873598439940966325805716105630151638779643981500665152639984434504817034412086671254173379166038071662889121653550757613052820175939040916661555723756176613161036717523938816196299007092417098079561970714605061629,25950783447263038071689830748627856944354421735888733670277679971199180982562433131778324823115329151828330351648021612294094370722267669972986008148650808031918722892417970047773133521052009921040352676366121022268583455702531977371124075420219730460605780729481918672698487964603151661149289116143779941433746038933525309985350586367303720987487112290090195247099032317451409521767630753382551078895196505751734814139673689437231496521554705226938471456297964527299627857211400740652357956604961830754401147898467475649318148547949522809325493238323065337997986089837089904293908389128632840557033917922339991780941,18687318215344566555182740902454336428592486945614858718824661784376438207943593936740995084200358460316665071770681463630810552799361606949595415859491617650913620153502889285378972038135570359724693463761135116433672709408902151793979112715679738392883186006369274528906256519536716049908878346476950103274343269649895419042195937774381514132210454482820166758270346958078142742840173830940449171621914508101385104081796180941351697633772994457709351610367195330318869580666697900958479010130985251846923421963647318437209519428820003347978947799013079168765159404172743072632243706939700207639779907975142224264481,23171083837957860801722218699383337900446240030786871268841926233540016534306722256418697981846104677203759841627977766724259030420015851980511088229043403050763668171722648141766116654882525867416891436685059276174192868946692072206824573955678962077288068058032958478942750338128252470165933443869447212456023356245726416751721989152798706366691818486325734110680894776063318626260722657549472271184224308146689662638536101291469177898475337027531732897213355102104990685266062044811809193138366772764276162181116512200063463469172637189164324496242489479899844513951546392297220122152709400797483802836017803985829,31343857270714098359641269819793471247744609345771779520849062499842222751853736635128030263011267623933026775894009843057499037409921342064326054830123558338476304900840753732976691522721379417037190976719048367738172877422341695489954487825668390415147795382659776979019893183466662138357984500601883268994989224933833342232607751640920642550766835871191739404896219865225614116435580799461951708239551693029017567595268404121330207564314786956323833427106966279493560190075571199071036639702485305576334075428484139050116713328535867597124971991546934922511844853709001583656359284723717084806850145785405536911177,21157487427733991932564510362138492162446873104287756897983482468142107066461483198236006898398559574298806811271053872211924774119515269456039458266616445024300383802406544466004007569246261860103312006457776588799344222340569710165666518367783547810282003032927364478322210948885423703591814633243286070072754280297773344097615910071723846039979528910869815670975142743376293197136856592859188733532786144697373533341877747464753616005694543102759948736736802569257325101204596297349394258616025918915521692968786299735438817719576226325356937526633071323693338940757362235570825853130085312301448111119042363796113,20871071186633559430638470998115518791893553646420368867902204568431630269565952322291766136370093127894084798814242475456617969102595313205728405129168253735048454253508700456761223106599134617920774227174015124829476988377890165462875183814841087993485125686632410376362585538078467534668954228084080919739417042353928509644795709201564083148094079836306167650314513450129297783489119015593642581024870311297891618816623633162063381775243950740681581620150958717466968747843706102214690157071025611480716612116918336154774385432247274600064909320680551901771492165221773721500541614228617829117370166464409020423677,27392140202372139560911530190722295626016991167776777076251374167016701252229100335980281077736021393527993281083564981442696373714433732500818431355034758384480955155409564373832745499649881975977124862697809360957420580753883129965594447943274206109113518479198329538838000642865155652137973709624008263285324174285285129803357738290385065522262059795474318914719823768887144641758090777562619592046692917101170170722723905514971631800061092086777420826999668590868568525034863406950714560799453233548147404988580929389926995856613912328981176466707497680180241272497358147647189027922268738449537259460751070153621,27430458285560064975603737623690566617914765114564307656159371148918349993794669623672608540855772729568670170546349850367039352526804750358257162362490778729908291097260480430890476823722553654389178498566668573496227008913481934125881578164602723285712928871252207939941804689355173665470036039114037118963971589320342018774107583274314158608546842149328506685304690959566263296291871998398637364399822435359987280203416832697098234360106966146607816540746285266790106830402077656904149244001383199485864465648143588026246539864484902228828598281873311925831114015086450712030764672165915248196209070047454495085169,20958576649034914977467969756965874238364659071947031154211972997487243461262394795340258789930977809611131615831278870909123144191655991893039673506539165135637011485008482874021240555941833074286915507794874804218274011487390148860550531668300157069443584231888571925159473970195937554740938933226402208131160317818926784959057391389980505131685522579677264162724011263439981256344785140426649255485125637348357522582511064347878764724812085894898146080695383734063354384186594813474135513405234523117338489484424618032520881618202129068318264606277435174234229102947510033247339629069254901430086639327996737230861,25673210614761004254141737312053451635018146154378993341101985326929566270344015265597835170941666913606119762699769929117810862190840467973932188558749547474174367822508601158829928161219529997833862214002106486508027112865708012732033692783629855485545330232068552007350877531730729790772847199443436084419382562932662568511421420283558235026303217907581598166628555941188586096538364407553738314729036218493332920854764055946289816665260688813327844579390598566768671973314358968068459214729157676432241630688442073088681756498136814491310636028421098965714509622937097403466307515165856202257786336739101389349089,27062431131775909264962122516003720577621307700606752850978674545503762322327045712593154396229756047740198870458644425173406714147601486563284216353367017457813364860861671576291918230182938220436949095109018225648486931358793025228571750572403143070647269508389021099989559676856968002395615757641794675119572488971947338527037552287756390904188517823120698354616567162661395526975254448758091053074808436661809101512025437321837959528689272191238705432334775200965152419124620293521962173467865862080429867958898040527206234108561471429991355210673373595922083144022410446012714221026174220695995286555692560595981,26101397013404440939950108603288565551073409553356897393691328641679505760230621741096317929709636865532238670826796537369580597665138924272200816037026280780915781305836081579178356868109017075793286763556497902869947712856535743263321959264839901002581734771178344662509473227839268090064000382806059250315977679226653239225555007655990623485545590336008766750972486014525144801720879444739045959169483687885427725508164188831961197284042818573448808100923870021600896976125650269597381009562192855793477760166114366163011349461311146903814241124631772470784181050979028948750586113514587005436500903242591757553293,22437602225740742482465534898349205983133213895660550238212001804732032977697798637757435728694311659299624886491819969612531644822478331097020027346346025174540910579800256280214031292073085792970245723432769912206355626120327772649905875827091190500315669126429992547075064736037570537735332469814000462556933603719315364923773085086614780916637137068518726889173784282955430621992569759561719528189938429235007732504425905045067985337249988673084527372002559031400047880307427208848753891291386460253720313523072063965808016289774609282102972264056704286287440985034888143293816594327214769326166521224390393446693],"H1j":[16370062914568124684409954423220013634799944354368183091925443712820668316759795091290952642141219645055533606292548565759917746455430426634828957426644826424037530474618159463204943752577732484149675671820306363344833458247384057865310742915406677379586789735200748327711872632191061145184949312294612467345847214916930759229195852858849386686352293049987465485866498220082468131280135383612600619493426252446949294373638968518891137429993551161437309269629260378927918725566711632082553316166822070110359114229533322390061282040482480263995079579444943917107997110057038662405191417861817663789094790962966996587522,5792666313208572350705907594949414590804636531753541567087068453778543363077542142305947911768781865374122070750607847515026168979710170113788718287465368491981654823945993941924700096393523941715256095048825025361038086570514643251828085846380954791657627403414038681940866434304045104130214177360598208974353162505514170835103706979081795485247158115653501838694614859268884296606546104394637012764653804556264770973741677326601115655746125293204398034469241183574629519235451142797709676366285591723984602961129858687877266469708766607187000988412118886394000517917001485137799190522482532376333362935442751367745,14510201356793997359892744405553071944121896518459738320470368478827891282273167297002903311912769777071155241288755372185351193850631471716718530488323104261827697027757019895835360274243188719367049075501436153398857359555924247334095665350350441220453460409146684994664351725204034521761578947269005519140498383255606322844603919000682223940913285551513356600061526959181206093504072618536296265435830192715190515397064435874311583709516596584871136822289753837472532490128304199643440789002058080030111113389709287097531544417461853059085059819958060220257218705882557929843952675556987949500595639655528439052202,21994027187251658420706956116678134303619268245311594874227984400819404446053485122189884678892175444688722527594580466254690437593853064923544979570444911946308283663229116693350631331935027065689358169246815279257122823014594309629197723508317910829246255814111959552337648906237682616732913305786178221005434606679461852547394872592127050442856550471832240167936976142756988960345619830477159914332536955389792251800932867389016006568741180137556936582683389834385412181167798283357296952856933963222988284608097870458140102834156304710781157917296313315513842893014212063887070100364867105131178923785373561146050,9913834538682656788610829579771569556624609911472542281771864528920206652057360227595914694025069327892774241543292898072673087864732558768588752951687639831868499912733997907550450742144719953844448973554109420086839278177283587750852958353526057789017170152122423018814264172807655239353760715885145548388992476483731471865364270428702324445078126354834888878640191523880163270112743069852403951565444480363239177556818094412397417215136415082364220806171351930690164376890892251369372868624028034980680685551131786332553623705883769998271596791035214982761974622986462384695349153129828098712177799482890430520965,15464554656029222110560140639422624868539470020281691165975400448606613120973644407534365935510334228227263162749065335291017684520353168923100727746351715681760916446206803485743114757577242723665933043744987644589191843035807511863595701170012104449542518101585729174897996392297770818633483533801844500665798250501473521227123975005972911918718226524366806206633841675388137041998857549215313632375036761617534744890091542919972307048750757690677067439820416806817051344016166652866968067639055986253789416713411110543055264622333767216550525033482750914452894139691102713436731472281130988207399023815239852528906,12865788614422531768878171769038267076266208200249164027644212721909963715015912538682157638127903293282023380796412378159235431043017021949518573892381565899437599164703723050587964116914107635838030249942901605297513982608974593500166572552953195544515492725593747884602852061628830280449190167844572097543184555448060083835007200101317266753106995526429573085540857281097156159258319440414895242242967023265742835942344738184941128584859242462621792495405423196954908356769683815889035326257091875874458718611430785903143039161526479973858541524126951528796262613552089943663340076548393182371918642954593889432834,22194516202811321146792934079465991238594712937226367504517257988113211333368349800836879103947252405610400726941861867633710543721876626238467090611506859331575128297406631557631820626534381998686705168632059305910804423292984195597625141279765512951234238593649775486094326905655122386938572411401132183960062730500896105597665702000968846572795357957098192758080717128908256523579293163137417423771381528097786100281383788052729825837521137512379280310081930804124457815661946839040621474089357381345723789618079958299474682840114875558952249988571746058484000722421698440994062460208554903525444210802321182968014,2022329329707369117437055740094404969047484980501833952214571687130852032499620508208708908589247080600189902502365407836277381678968110704345539053376355432754797822267575827372488857681103447936055038802753292113151984972961755143427625893918328299356797405969999266508287378495280713821635381697950988327467894890827305051792226857027384943282520470216088404776455333696749084292781033264737672933515625823807581567568754027253581653106384383593181057349330506068884659072076739226363616897242406137010778123983315619151551375977509919335513557274798510437948502408760645678633359245877721858614575061700591393721,21638702445456858422878500352234793329413106731788942261751796025224145517964611169394617788434763506002565806620170893339110273126875286455095506459298086020278318872581385674653253080383128797980439557511752718258375238388481802546638936192461482797150514683008473213407715728694302414916863995043974867827876036585791719812271742103323384468954527534596036617313432433874380308883492321501736879178345427074046787174556058119038049586737477628511165980047288251497278209275581664775606335268904384984155864116270266473616061700061527150495070719210903471680082400487754898061609554671248760480063619759950744280907,20932768206097680299943959313782719928339866139959731166252002876096405653871733170637914957728294590217455322823662941811142831487382716004980657707514358763150029924714520812685697751484102120909926147024006189544048800446501267477163792293393919588659127430522309503845365000611784195390022621092266420671288509706282186373855655358090019051530324622779193478505342408854462043136412488215465955955421082850282626458587043647758494935495915329050933653468179762936320308005669155322055934931071589853638981754901315764484414249149121368560265856082417024956730272011998498550756243974623835494966366962683389714964,1365816667585940330490355905311774458514715320376130020996515573937571923987574784307504874484515899610747050162880466334946062918938639620242137371098595406424267003818882220942016240927776918797542668204898851284066695289242978919397682088055368818116198595348273129318762376760634794532531433638073562846988038755248023571028829475051882101071203979111269507596248527906600986677728810751499828436067766182628039345309355341295172437424660504415028913205507139100147921515616240146193076677157859750716375066201587358526136840334151066553547201088947345861316322897488659331106732575557394540428972305438213375814,5703448175361065536885380258834894924349694750000788978424055908887487214267289314410654116737467233333514153490994654420800717947051017245903088635547080581089891657444714373263301759995815635072257679749046151543038146531810310826817366207696928190231298874979984114964348460891792295427444943206125809938612729939665048974349693961742238426880015130297226114935093282566300228257419316454068258492582819117310017835605391570376283517758701794125467889060184214275911038527696714000045849219024045243597506828846590195831908281658454892131533791810760325400211405258812142759529523572815227489710851557846638137542,6412242406353564485058502679404605624009190790593030266854505291800626778702270387175472290319448965303250433574173375628339895100997329474893279692868549940279796264731093585208695625011062617868491258157215447275957107991387222489580499373804335870682739788296835432969262878909434810429803264643527538555130662379672012787064972208117475596665593916782896686056579449802576468324812730306559649834202797329883549294599723290402017221639617907711497472325019619452322282704828796586508386419927496666562295856731151167316262475184222145101211618002798513055006067228431048839763646095282531119806559583105533794495,12506213831497706601305625665856619892819919408470741644330076368184175310515183251146177621238406207206410185643656979107225155831507800032694528257147716038515158570256044209419514879851010106278924359714862316802415670557334433034976750101928783991744583819411313589306343712690219032368416678985323530251239318661396466801994308940886752046080901718450406046375904389766893043894196541576969928137946704159382893563356338387889137855413730990126192021766856444171515497507122402917749807424621383187173538906785892654668489198127757882153223185090960714890345630801099413698632285321494907662894187137142803150791,4340320683992731212484211057800765907410470847269768304639037529290512671362801376775768288042129836088810539204858832843247178308000345604701431226310915807542068901686097542648829915466491213307097734259829414895234796525272600474326857346693882386640793824277606043756669695477090601330450743232413209505539149906338741119182508496705355703793044044384724643256986023764031438551900073624644692938223394706241422593949897781383635695299729171084301185179708550600098470031089086344919627503113655735768701217637285566867914251954499504690075652022468818725559007318841314414541437592229352428286215595483845053638,11992304082547451264970842283976418853821301172975086658682116387543359417074268643442593212371361490968819128789238354995117145993279593426471336648259583293294202599078859260437992548184464009386152763827946804967424362206055435693041324410893236957405711025923054702040161696386453571055246924713260145964584750230359074777621444549946362450468684233332414284037283955916761049858000878784786268023500095161975906495439332741618288811384519280375489794382891880648564800750663555801045203854227681083222146920912455217541211811955477767635787030014152643158711960638325867606918508708678622347924499914937535267162,14695333877946105505101457937623624377562698430478247685331048607650568913937201633971254630714736577175024535322415669442798271475956496536083972430246897654017678266490639701809689918981250971730052435032797344400248226649579239038593902835536123498617918666329121083751772876090103853533035181736615043011673643017303605152279678650202512062770466963460251942403425462061196179491356440328364636048438335959347603428717042954470887883300891927932651483741068303515425618933688194621659816079976510221005329843899476003615861655015952079393164902282608831513778303062716347528913475870793908798463564832083549613643,6361624891550612817090909815430156259585522002511378700573226127309539860650523892977168943678195716824260472829831132024282728135758912178943090813161584286046605117495775878170654691942858452263763077967647297167266507685944611403131069163214134338169098006751105941940463654618427873599267528041887836331948305951890335742121311832653316741398094161561749334956600724220433324620401615490879450816097431926849306846384679126203940987154375373597650036103822699248044107851648286585837187416880739896147553285981829664828869063480707437325000260106329487862878699057790666160151383639198420965781777521408308842299,14948927140088320458060089936345715166494298631495857212773926944790409869483957673185876995292328343640197788589621807184518806705821872810447516194927678801617268846361533345460325613772855110322242304569109406957894646727384216069315325052819333705539766154972989576988248927288284161530384846682668538198851543196833452065614949748530253693700328342501577900059842225778082026779632761099626760985225309957646536118173500439351182747667021029407125807666947346322131872894915154624415940708414296769044070685030466034270063053482191494419465005898644603408406165778424189251953592599788015054586521957253320449350],"H2j":[9653640790649475435050720061635061544335995170813227062007808546473167610366804040613054457009646767723479128021709179513573358845884462519136809844401815066012655857973373223748942767836422506840658738556503260986697250346171921063441485400421533124068250604530993514803166454504801884882297625678932746326066096923436475087338628767636689481829832307623108408425959669915171224014581673426602770656342925462023157550194457295116217893440581116140543598050947318929500123378985275492765280831578803707538206440354119287576298034238031692982504012470196898579719660373199491817717767711160029710911173725338539566802,3578111860663702772408903345930659472256129868015762875031051677614699117364424442270785915866444756532836287879751640816575659073006676007210405202315496945346450727441553016187592354415793891110773645408147683476571812485850037389853330648238106038729525075512542830213816094853869971661719959033499816133612736102442725651388405183329714325258711655979055386253406319598230253658818466953001815116530962213661362799968355793928849708876651937113231862631691372187008559216884922263381652908899796744393080985272287681952842592674663712445064149288160957033524932550150413325097150870149209345404214256294282382085,2562656890570835296352376205216590519360952576353253013086344012422175466058176642832419040937235521572328705583208834436813588375562745525224328564354560731400723267162764903064018742843839822445601315505274421672289602485557719646504320106522113645676636456687468751723898215955665240524139836668877382766583475339565598073690853848639545227831264115164596396262772422415214665834769274554577301336288865874066248890243346947740610544045667761548206600923673948174739356732295677551749947395385332556227074205668024351973201205328576603362256016900712683688241615565934460363012498930253514800348031700419220337084,22298685304249156715841839507145325522077048988910268345524279200863227356693376151033928569980263444962701165900514081299580440300365488019578288962534096517468902687907593109404000193096117803450936780948162440311950526862133749440555125530434273281017640257175046682563772712146188162909037424635371282116160809281350332585723737917537784267577381007869736550494661878733387948458251550312048040279754696568539248453484809390032249968377837207868808482658171733689439009562188880777607125039187467565549644537971596666666932158369857160883674108786200103009448463903055431989786220430290067137368612432640074310237,5879475324785385886080118453628099122983640585548725925692818787221734315336181255707999432375105366554548265736590343628955580077952532008988837072008731794155978542038914506112861039350525606157951017828660604272526605818549217659336563240062224484914310161520768881507503977620229908361541865095980430141394883457555144123820008061398004875781145432780438239985999952863196781468403423593755390719871396312035325131303835880979744451815683310530516197085535308856850866798018523735074120787646575912319226234213646284739550604897450763442470406797690674949855848424274918433854009972115369882751833585035329242761,18385446607341413929216752317617998458160849115285197433981133872531647462267817752048089105851349541660795002685652456000086108157981979426453705134803682299691630928200421847304354380350114763235863451959398215394354125874494984531309790405988904217354164073819568789120760731377280912128364362051769093741704293517942028826498663326655241508795914202031051398724638536523567800437872676476082333745719105291491676453403521845621182329449421075607837301738332926110019535833222421409565228043580701032497151738816862657210572819375918881851411438625526045192015060739626198734346744421593858157488507552447503219157,1543023308301318791291636723263661645234407352972693347930324541592073282303070472660827743672362126204249434834670307886593868303926045601951702434485524524299146190187978789568968092026789881246345813079894138764374868096047892517784410005345559357208978859029831295378789933334638460830863012154730679683049737545160281582305039520027158141403805442275432519516975114987511502563484403828987844187725357101956491714139410763551382100998178318863295224089354110436171289236674317711473441156004575613857935802947903186710273135122934512388821226072049093290647716152026391828419205457729234939199662889356527012444,19612969155814925927900736991694631498815639143900750081709470615537990112217002271570654324774711607889679093067885009086620212727925361021546388555967618760690930383917718167829905900473725102007606380323545403188303409627969907029774876076466652636827981089598601596821629485556381455948439528301393466043329774616323471054547330305463639720319551756652789237846520745512886328152641158526571443916940675394167134193466655448590323552123565655514390433855054114283235652222186673800138041449545987929749641868001910765212175435331820335256408276886037716378072029444719891008048297796893611911457701948988529229282,16728597479991680407332164223276251930971882378040601546182090035388885277790620642130984559023085396113670088325023048100279567479347085329073035696608554975777409036805727779421519384442869313567486101701856985975948368091166211269762554257345698853374624187196304439193724792774291722910128170261256918581442838390388813651239625403911503915460141004046718650178671549506593787333200145941149923809156438433492770338609398675185696331933468246886804722117355530728325631706711888199439210221397335620762682713255422110226515677047306270190770133307509623731091673964502293431264279055367772707113499782043802219072,6959317283624626561280838810011851848606573383456333866356771642710009365943896928686358713606049305764133589953562485262421030190625379899341516940088176438653144375343629199857524649360799157617467464667207079997090732685762910728717721600193091207478294785009859545546272657408615665578978698966309579302786158306046780048259033960048367018506262121833776982527433736628482989970739839626561164331780819203300647377931749431379962789021848504353274218995997754499900534324222498419599756583548358913120017762065234354717544865856293340540081744252368993926137398125931373959455585431506453093937785431907339954440,11707820384786665143909181917722140695066077204138675859555940823963085499198625584153264077484611920625749300043796981737297557284495008476240804003977980903028035986014301427047695461308987163082644181568819427026377861293089760745032220979974314071873695748444473344481739404234865330820136242966321355292830007655295383627072182012764804101331409332152687101319613845603099019594628684448783718018158413013589965095889558760502141979036830513073469713570347578185733951700672935586145889495063730457422516713768592535269075934288536062686021973569079600458124449475763651523966025703378628943004868525425132768470,12680113365919882057574106113475868522128522384382601197321116786250024227710942753687346378669117549887826210207932325610070970266526443555090342822407043741408930676918514338947859254583933603158241276952467805479024344654828575004834480980171788527657050724406198542408746742354531228386476751247072501617975174749412587537766151828306153888252035411082379552917399551115964687725743020641384211728557413837203373250893065347048255589312756928959773947595990023044227966600250595372063312552514516053386563033360883348059069724261103859193470298590631028566611086928803669676829225666250863192855787196720603673760,9019657743968669607069997647539968262488442864840563257526073127843215521457164945521996034009113740811008633126128201485876365964359243077677187550395794512954090076458031575481109943534530172796807658845833964496790520042423061347000207701119849250007073432625973802817311058171823571086584900654526615124913824393095137876668486739795620319593113487319306758076868523633806281732675535191877729151172494277333403640038019691517232275137009983348569240826245496914996509643617684093222096189728055561573909735610063401084000594789204303691795045753669664876756897469727730211469836756344045393712182476806348262481,509727692658127329234819348282810282823358222955712460979035976368760532139665502509369544837059902335508770138210475703837249689840377266421270410968940058538125244069674567645496962345390684467242600183265156396927471901904730403435725549974213712745153254130090979413745442250230122176329142735628394058559735078808655502950813887104168441824680204081093532561399756958380811786995754253778833219233414597390819387529718886819478101169481249247654168746478268826094117295037052091370216680279456693786586815595643437522530315484348520350527079378100131478937805285900851443697897872168020710497135465069780807687,3842294189873253197555038084451026657880884971357471477404186912118522652991181539287485996470843289095459960588932515934990566949413638625169611068786524327230092661471599333492933504858312443510340452825109814219748343465626968500133039743956522352452046474898271016421645025612565409422475581907506677274527441400119913285024497410632467771786023570373229380492185234340140113773065511943229164821322784643171443642045254567266530741214826934397811463635644370547054062567012016231228876473774669826378368361454200858389911185989849447377758286974943747417740672897265471383352127822433439855380640722238771424561,12605457156020973444763168611522695283402376793806466187139735133742095649198553225011255516233464381926302993187553632508703365300132776800901755737316341235931477791227746456204649162573568121476427289406145613748980339685673661511024577823438911510307584137593479079190723698666793670318162798116104492476114229973922338166221669934104784402698512349426984473431614385866651807327515058966935011035923319124790759086336194395000632944700277782112868323483780168144642250558671981757792078139349701070563555668082796938131863328410412160150471825619049694173807371104601644825755844313657731729068891163705563867555,18221138784555811053296911040444811422299569221370698341523745856400091281377839778678778328149110548534138934160836481393838346908432982920562116626677959686450236292050295531261923474882738697393510842972966810110218027601675376030586402861098487543863740705626110087204717386977952136809165092530095562928623301371629208844732733664526090007002304626939446606391205626126192870615394522174649688440887870385705569710809581575204639778805466412903927058799148697158251622260213645585723159916754663707237605872275846686566820885362722073881904277317597403167380835907876296870877478221646920284310430371934404822311,12694464409184116198175216134705674117698495589897734763290223249700439697747213221960704240817308024376618649511257185410755720163743943692791263666036558979570909072667619923266653682384882259644954119285287063471541002032435823410204495631358202104734018269537402171761572193134509812396214919229814690930600798504895496564687656801956575973479011431776352638782289114699743527186781919502658003154674450714069197242726393985114420810547684173494018605147976810102913734546162705259030658206284298418521349062777115509219489672039075093329236647292016824670535351144784388483525751068225542810044999850751665224074,4201765615355271720665237538919680402664127861292891404309962354268106831635826650331041297039291644925592311983403700464576600435518882156854904159089879201301912105368413055078865795374091914623189759593456721300785707753873135853357294442043908826331857106210726005526370024055346666586491341046296314798619327898858072624823009991437876242325624019938022318176060332738994176297193724805935694309014605422020909137014676945305249645201662101488974241605863532571828450201507584679493905057922784236072997143238879363168245889469038437561181276242698369654938178116001428367837409133015026021079614840533626761027,5693818583095067032554302348404689889827513405370432124730856324552577938645345928545249455102636900381970277642590696482249653647276002965730520652542065397111012479589269283364878130676178205766673654461574816233876555267291293343730094421360715866449358521574582941335437947403997555554148186986038285554629922609604751054748762347310142603219823359220130919495866316927224981350998367935679597793982889611172206443879512553133682522147111994374985808397513270886689704297115982752710085691562031953231724109895260045500479387280386873351701423764105530811712645875225583048344423503433093456461313617037044573606],"BigXj":[{"Coords":[31961961449149592290215619337342545369164998201385135329342844666166714363705,64636392625998908156106021830673034903148364934246785109426074897879798496695]},{"Coords":[13561027879868215202586968035768135752207534764402067848160241312364043370282,31683215740694624076579960720726613640416539517460242899883851320256877874663]},{"Coords":[102970472861055393328233354777448191839076263179087526130927097177204776801806,19849778771794568183958877322544789075545226949228544528619329359950140265115]},{"Coords":[8366486354279759555693815735694831293559828965602250556327317858912116678471,24456250444071880675953816335612932507033433175255559522554349078047625549678]},{"Coords":[93126246885046599201299142306317944158536766260090154798797491446571717586613,101632074177392193573512178573083324222329391048269493231849116848088552218375]},{"Coords":[45944473181199785374833853975473363930687909609574532965286298616052742734642,49106561873713078177518155217967815241790729328033604070651886838013799968339]},{"Coords":[88807289702586806295763026580879412609419986472794654189482668002118698433065,66889255218792877467551818840857264643456782872798377645941824720058728156412]},{"Coords":[45745777770010867130655637386117976632006388263133845103488205463444756286557,58413618959379828248439575493421719547880693819703454359788283537541749522854]},{"Coords":[14931705718614911512649079486924798218629483414127465950786381421646404878840,70853895869521315016717813866703398949051565204254795550601147911581008651495]},{"Coords":[31702825468512650039750289022997764002837389172468049717092331147393818254752,90704921170203464181329063311130512192295590723462840980995045506481351030148]},{"Coords":[108133277897421036808605843118854356978565880360693563552498521263092161957794,33994893650793696043114830343063091347849012751372498052809673503667071259863]},{"Coords":[13603746174106309213882605187834221055267478293724779491981408043396477605150,47502402322605913877968636451206238145707201411072573659819652572960084227380]},{"Coords":[21962637032374642863765173367353663611071785709723940819398260699915154728736,65876190623954751874122457014542214494068664571689464338691288646258987627994]},{"Coords":[8139291295258406047002639746372064115101651961499427493344848502049438028449,13643120656693319356484507306610353728697986968072320539867387334577150577786]},{"Coords":[871083651129542234211830236854985246175496411885064575219875767816674532739,100904963893789549224657775356884044157291453214379932308347421012612568685620]},{"Coords":[98028745019433069815621229762947408124245116227553507407780733119772046992520,60367568163137055112812282822118701471566204774343904929920219271364583776122]},{"Coords":[37332951852807254347441974643993866127041633128152922228434313154811023954744,56046459898819968566785812285970001512876757161864884424831574905585289505077]},{"Coords":[11223798616675111197150792218010453124916879614948521844981845491687409376646,70914747125199464172751182264377339815163078089055967502760766110580370145293]},{"Coords":[62949410140974969962342726366577125978516456835571210444108422984760191628326,55668150354406094271153240357261264601037343235231498038021007487545647055721]},{"Coords":[7611358883569187056502001665501128526153865541559158134839099203014115911991,87617845479447207941483995353359860120852817257735643485765526341493112597509]}],"PaillierPKs":[{"N":25922769748919102678415192880711636156565612427571550685296776086119205445525743826557545692077634738129321690187868055737306626420419536394422682260657759329710259802294458956279773225258250955469954464209933873407784778802101265717840506851919529598154066919091078766953942869622551929743069097967501533345363150709912011028449270819442207860620552088412428865900112120786495620291333470644949767300948329241775121748888220588626655915013364614554467190860190736954650967874940702908395331234632114014125372505065096924932509595285205788545338407476139436404463823043865599023326570565049384032977060875483209339089},{"N":23930233287283899271771864413305422456138957780711273892670074191715648409585503033095084345383391541524625291548041741990557564183855401706042293717552023237439032182637019639795919249455653535670614575331737610284863144094845900714497635996654401300216924764570210541950557336240993007183309433063094227377624710274228010652758134777897718742178998545079447283838099902510469006366469099975469096355736757507201973304413688395278990349533350163833514531655073848517781662614171483003731680841330633223244205178982328422170273570503713081265847261211618499950287557687314846590616484106774575999250148317390509484773},{"N":23804125140052077689856128298352557083678652474445385365228110453726681237860799979845611556170894187976654278582576364089033396218674226546868809651353049956675922595541689542576794678062495339422204984765419389268325283682512000995221750412104207394441438666051694475950049774094896290106430636216894744335784327798634247450687264677393229214665686649911456587168142148024558282134024448427550922487022680890892554782651383972136386958126051377715096556862662265886688077689941967157694195467190297477735450118736949849327358586935699405848605265912107169200547464609552395233560924746135866463084686118233592906569},{"N":27732731445242071631661957657712700411367090291795241371771965432140171981887215839890743735562516245338158767440902124645306227526755834590210240211292920385793070069156192085968959067158127765511651425539136016999745924428061397793021945121990437538890398656832618417715425504589084090095239114803460787199036351739230987513003864153861252195944069425337294669643857426654756086277471320443733998616523518289821541295617435513033264977202437153989318832642208143170451837926277566396048774049270318848738844338850668187024045715008196311523744942555689097435377598835544336914580911633671909176827168167136470690349},{"N":24540078122494262833119917930091872139739129939617606686122284549157786865278292966087938309454800165081094474899057524752572006230843959997841521536274236615511587750039832014979332539924539915807860222967109230298738770371871063759834296194059907031260324597353713442284471130560805946122495294807423458083635025189319558646442212459161798625793784738344309603016513355951936699928410805609866016648244631951643648288242475041729105749202516848107495430809184564037582943457286768883109270231510808158554549441157152513493684930416951758705877335895250913277012541968048511163986915876606316087458297080987346429881},{"N":23068407873896187320610408658036992760323120237076281539139801143529656493030091268390954927616119732305210576479622679524747880246080257702939099128994719527894439722828526117361648236913823027514544862046712398251734066527697676237348724465158893599560473200351530224245041596340220963683429881340553208409699594299261181212989221107530971303522686320513564226387471374456547377291192484997988606654540899634665450162274963086331783789860908282085692296248300574631527561763641974772756130570734735297575564567681595756096492735284720794891113064512997620639494646662790341453069978107064092657029168133504185408209},{"N":23360724885676198523522179321150194474267520026708517257764444663025119039638464657158724624502663558960702469988070676415660798425916276572290617437202837750858738892140118363926690520956187802097449221385283612203760207950600195667994976400493623569930090999021596112553157677485561299069991215207522767873493631366488446241092099654975621689119086509041077742510323711222260189730828492291459421830791540197321337933505867430138627984859014648102694909985043765241359798051875756951108870386862501048751981261038842763679815348130953290890391440850806363449637432840586263665690832227799688631446932015796916844537},{"N":25572476038149983843824758627743773292157542015669155545898739136432359227667585235619146413408812705275735125477228881724887114180658812229689479785083051083069428146070988730518675361280497876215801249358736365876007532614766347833762716625529381645528767502376159614744663698030295284120589012492759402983796882103200388651743368106596836536656368370930363045639317610411594882976032564820311800297421945366798108347221120736308176815503106682839506833524058020959093518528060465861144447540812579976237229589574562145541453749754749768478003306870660214131556451734687719631047077200787163529663274266186702479657},{"N":22679491499676926565249058751269701914370165376325885490706178594236435587374452393672919867257890172146499232592163563478749644823548404207107209183759523050603597049541204457028947474998785130219644182203008088877544305999771879137962239304258371157231174473491797491114277983084811723764080082851754276992307408859865524067180300336894890064430698022388669278921501809909740064260359142339540812296913591956784925745003590749703099702370645409020780887758983568638652737043891478141095930983089074418014910987946825193073588506986312390146214478478314600989393866198945700334073322066709926152728868061176019551541},{"N":23556951187256713732039305973238937631620385080790804249029259279472926645248156172448686117325741554381537031072742207487366612992119859269685828207319515666102872111546619607137952974660084980511684952594879342586512197525409799350424247192892012163769784591542546626323584978204193899561072157767856334488337110957680579926475975853118319141371431419486620931003438350760541975587261961199260033262263106014958269750801811225868080849204705441859105664948039653986722714354940941410686784948916936213417318953574086609821961649007609305029496977916873440356977063491030736996785241653241262171162950673703965399497},{"N":25874692591276389940909836821933328634340387691760211719857424847912710687202655208899136151842265948895002254373718724704209721944297143062448179072459504026936041473424765480639475272190837266572978737262449980766383982513621598580661341958135147571122513631091491976191663115339463730624237942100977649124658328431032849468551008597071378488661492324861414296280692846039598797857140808360770338990664282941023358641770157837364612463858095463039043959476170224596463891235213200808423306885708639894810932553685021558027739945539621344374072593175483199343233185955959027063970833388545231587659014590298587532269},{"N":21093015027631740022404443614096248522776233243516651444497036871175728958780883068858760981924585432192986275662870128643941927265524238598903061299795143929360395711020210769824764384718922898979318706735662563638859312024117764087176816929100038836825165997745175858151391747552772916358596447916581236137266690055236206686429983418915105841208302705945838725058954761546083763560226985859597874827308926656876419352353487645531847757035757295720869824004015071252605178819856102760159009139713396577974830023684477215548955933062314225333947463154019890073099705030557644025494887348484646782031863159015194484417},{"N":25298229297396047246415163429032546137139715727559844391184017906947304850232141234045323209407471473714145852636924268416866274482603754141415609592221706725085407059971638122009913495964543366119323417218834638913881087432600102264473788528537095668778412431377856067113698729914757144153775835786313302871273438949909936263664301138604696985912220658568672102041006541952444982579070062275651333990266954050520365848194152044834016212084441028573044037025009772616765171118784908205140185837844772749992941537017860827787097838183799078426827486346760690086948873222139803967157701952297751113063507286886770253809},{"N":27142202438632787162126599492908508783692765215748557510315014134009044742375492012422395905792294364201376442258017321008269356413320158807932162865700040957744157446176162447390298999320446062496836729102114052332958615915307193716216287036998207324413342337908047902088094382893405585342830460716335897834006040665407645344104524772021574862180664953364488173834491400964015536206179143781066229852877159880337660767454184922616386524557470530917791514588890903382115919687896218697262329973216887300329083882938499296413225108475327673886217363092593458630101782913564451822536507792690041998191978031482893873661},{"N":24506900410165079432913879286738242981557799447704277709132563752281068885918764244597103897934251933625444124974453530023693766922128717584028552755128051187819589410024704161034785358235535327695240184593017832269373629062497324651346586921679971074785452914954524453931920025017233873766495332551435302696547239605953737313669053194482788679487077465271167890491044626060923037626210805459313170671202877996680415217025953459280403666974895608025476083146334864242075064839862857242870450430867849337473211116054259839281123892458791925377357496234454799948092884977174468592367921171996109259120511593665944142269},{"N":26694966767987840469949338865344547117483340362831650227215482575365406012636774021468648984974992022743149425563486792907591668251920735101399223711217247824036472514130615393737405150133409306326610912172081216216331513707092964488994949651842782342704418212963772590286378010081225253538245220740244206602153540135126863052186543426616293649543741875882042173380956119737322204906042367710990417544800462728321639324791151406955584010061660628304199783826293959912579926890912970052339895938137461119473504729752401310289221600181057106776643382986556174592325963163204522372078262520351770361427042538592078722253},{"N":28161406783438289776782541515550232234219338732182263528677255680862818571394539837092411279908340595856411618560352096707955778113841586575489526111758509944691006867155143609674220650793817498419172979829028602046249597147507621299153669762040424244341554256616377217119563525915851719009321686306763607672801085326365691030132510560260181669852932393003570340516931927914922146799899039434467722922041925474101320996856938035131446584298134298675299397155375412990353784006913691603024110559796744887732721945933471868150638226543773483734660294313186275340618342717882057017678734282256333631978096376709630195493},{"N":30290385531723706663194155723402482345164001328034021287910161482488063429892351584916277391109894294446801833020074687889362652138426091460224301803948089690115686705682426193759251182110547546779254274419781083851169949275087832187538168815749507922889270386625094587688358817642053715412200458038741309360104964334706289126542952674791148655002683650712544232003067953586569445443104249283623297733191839471659254940888571771772980381177972566220724293577306168494057111878161156955456998298372496716136324267059071403030493623531599851487444134766104137251811774500492630476212318493040236485031236879687941684761},{"N":21891762840438596060416034930044842446937758373617708235288562429502315391645647044939378215035677465574183685957522821315454029977571728750605988329881847569313802549118091978526315133726370633285214423147938264418314863217805659876561184725718735591303337902948467582966199323804114988231963307083517180657041313131586070203747291724798899561367507615511932716092324516747320587928666160741969956121773346301706809405054989477031949248189136343469258532041255092588255241987397760849320759799542054627513230744643622791455964220513319415609245199516100422991698341556744298439022451385568791478794837569530013904689},{"N":25360934335416714794999313991057897528923718232366653339706494176825638906694689891746545886915964196582662458688535283322287088397853865709093712398485753916163063777301385991907720781358632265326870516346689492128442283774600103789825609570294923480202759046857115137927714980847316960609776972337028789163184648676367675625026306027140091761009104192786329465543720196130052658782412428125321357130192023653185727111578488774341366834046035305712205910649341950409228079277410881842097288924692206421126356254520404943323384573694119449632324221088061482676921038116252201661916622983158849603411299895152156469481}],"ECDSAPub":{"Coords":[92492306118178589821640584737240636977398594678247616965910942704932180187323,27954057508764275913470910100133573369328128015811591924683199269013496685879]}} \ No newline at end of file diff --git a/test/_ecdsa_fixtures/keygen_data_11.json b/test/_ecdsa_fixtures/keygen_data_11.json new file mode 100644 index 00000000..be6fe093 --- /dev/null +++ b/test/_ecdsa_fixtures/keygen_data_11.json @@ -0,0 +1 @@ +{"PaillierSK":{"N":21093015027631740022404443614096248522776233243516651444497036871175728958780883068858760981924585432192986275662870128643941927265524238598903061299795143929360395711020210769824764384718922898979318706735662563638859312024117764087176816929100038836825165997745175858151391747552772916358596447916581236137266690055236206686429983418915105841208302705945838725058954761546083763560226985859597874827308926656876419352353487645531847757035757295720869824004015071252605178819856102760159009139713396577974830023684477215548955933062314225333947463154019890073099705030557644025494887348484646782031863159015194484417,"LambdaN":10546507513815870011202221807048124261388116621758325722248518435587864479390441534429380490962292716096493137831435064321970963632762119299451530649897571964680197855510105384912382192359461449489659353367831281819429656012058882043588408464550019418412582998872587929075695873776386458179298223958290618068487947087686161356286780272673269607170463788545586380498167745667921237901923843905603453938275954325943507348616895095334722096529329250818632967769497658026768061409834060482043020648307963179655242846091146043826120000900264976850914652110038411771683359426600949891088091169486185937559313164661188325858,"PhiN":21093015027631740022404443614096248522776233243516651444497036871175728958780883068858760981924585432192986275662870128643941927265524238598903061299795143929360395711020210769824764384718922898979318706735662563638859312024117764087176816929100038836825165997745175858151391747552772916358596447916581236136975894175372322712573560545346539214340927577091172760996335491335842475803847687811206907876551908651887014697233790190669444193058658501637265935538995316053536122819668120964086041296615926359310485692182292087652240001800529953701829304220076823543366718853201899782176182338972371875118626329322376651716},"NTildei":21157487427733991932564510362138492162446873104287756897983482468142107066461483198236006898398559574298806811271053872211924774119515269456039458266616445024300383802406544466004007569246261860103312006457776588799344222340569710165666518367783547810282003032927364478322210948885423703591814633243286070072754280297773344097615910071723846039979528910869815670975142743376293197136856592859188733532786144697373533341877747464753616005694543102759948736736802569257325101204596297349394258616025918915521692968786299735438817719576226325356937526633071323693338940757362235570825853130085312301448111119042363796113,"H1i":1365816667585940330490355905311774458514715320376130020996515573937571923987574784307504874484515899610747050162880466334946062918938639620242137371098595406424267003818882220942016240927776918797542668204898851284066695289242978919397682088055368818116198595348273129318762376760634794532531433638073562846988038755248023571028829475051882101071203979111269507596248527906600986677728810751499828436067766182628039345309355341295172437424660504415028913205507139100147921515616240146193076677157859750716375066201587358526136840334151066553547201088947345861316322897488659331106732575557394540428972305438213375814,"H2i":12680113365919882057574106113475868522128522384382601197321116786250024227710942753687346378669117549887826210207932325610070970266526443555090342822407043741408930676918514338947859254583933603158241276952467805479024344654828575004834480980171788527657050724406198542408746742354531228386476751247072501617975174749412587537766151828306153888252035411082379552917399551115964687725743020641384211728557413837203373250893065347048255589312756928959773947595990023044227966600250595372063312552514516053386563033360883348059069724261103859193470298590631028566611086928803669676829225666250863192855787196720603673760,"Alpha":8982739081272854541934523319427253588467492827803161357301963917513000963502541842905105681681074542212337044580953037002586978836568075556108242392397727337702591496849327297819763419676407138897055307945621109340979072527552512127881185272498952674704564803472098350415094428678177669943457961835371283365249952737803750391108969157864485803552872413708303131501743419305692945470398669424157929027704215436132973083623854777821569504259872417560946709889391407336129154527987375049059947728682930824038229884743173021842124239197256298870158837715736105256108408298704883376201253985919862556649612508469115138487,"Beta":4088067740459137808811076309364308166144143936592138527814322587742015626072756647472779645603989449536339941168905657232708393541004126425578035477732974993408835682636005934904957054707702135364364310109988068420346827745201341038707055112794259658052409869594879856192168933378436341095162370493973117777172241093243186871721439379872753248966788944214638701318228541853354496547849080235214498578470404216601362453859923551674357004020753791695416051418222625969167051843946636012205349176289659853283079365536526161184566585874828283563472963538858158945643893545504662663563024628528370244945396455207554015913,"P":77114081314434698284625001706804956216657525881888645263812565688822549770219689367039998651251855343829818986309253679847986215016450796878063018578875906149162023270434324323737706329378616917536663482134382721880273717336865671785268763258506235192131065212101453446219297424869591612900260786389512977349,"Q":68591517486487907148795855375453344498707797847620287596642332488177490859641238415144040182112248279567876226849127462552972460451311974882696902105331891067224402823346011141231030998934071096834303026588137694424227553002771316695401258297529683480822977446161175655722910205858180225173139797949568476393,"Xi":102417801318300522827543028380237405039470935189878693372793819835767512967730,"ShareID":99910913777216787121500121711080713911605201308487494263101624819470958719085,"Ks":[99910913777216787121500121711080713911605201308487494263101624819470958719074,99910913777216787121500121711080713911605201308487494263101624819470958719075,99910913777216787121500121711080713911605201308487494263101624819470958719076,99910913777216787121500121711080713911605201308487494263101624819470958719077,99910913777216787121500121711080713911605201308487494263101624819470958719078,99910913777216787121500121711080713911605201308487494263101624819470958719079,99910913777216787121500121711080713911605201308487494263101624819470958719080,99910913777216787121500121711080713911605201308487494263101624819470958719081,99910913777216787121500121711080713911605201308487494263101624819470958719082,99910913777216787121500121711080713911605201308487494263101624819470958719083,99910913777216787121500121711080713911605201308487494263101624819470958719084,99910913777216787121500121711080713911605201308487494263101624819470958719085,99910913777216787121500121711080713911605201308487494263101624819470958719086,99910913777216787121500121711080713911605201308487494263101624819470958719087,99910913777216787121500121711080713911605201308487494263101624819470958719088,99910913777216787121500121711080713911605201308487494263101624819470958719089,99910913777216787121500121711080713911605201308487494263101624819470958719090,99910913777216787121500121711080713911605201308487494263101624819470958719091,99910913777216787121500121711080713911605201308487494263101624819470958719092,99910913777216787121500121711080713911605201308487494263101624819470958719093],"NTildej":[20539613942852364097890357541124859329931817468396278432713468646303963073659662742703665137736867247354367523800071318544570641421320510992705137876681425752810096966415479528824625129989063402576946505816887222102561441464103605308386975248012283762854115939987945603503283072741824666735245204091384515192454349252950007899626081034649919068642018312817079235168086885705851677572363277983076857313399016624874649811334825694862350059490166759704819411086564625186038339099281295128259092469609539775245598320922394808913338827772001777479207381548603315272620456484970681705115865233047669675602308688791376160589,19461028678249357721701139019984545699598216253588699892259672060166427273458875608319855785678884811755179389274380053495578644060470229307987007292965327985966772681212738091909180148035785695413643708212165777295662698493311553457174395686873169155288384255670661532430410131045712913078128214239252258473814281283319061613409102410606683119900924722782015902970301519339718368508022893331969649513655635811522767629123667744907556474126774472529158147258343482417188228144974952598132795041139358631852141986745214674779692377899411672630850213748161088638857089501019216868292821676374914063004957409393293909513,23815206664659393600414832732918591362081086959256855451108811883313935088830793690110550688160373127903180149093000695761674277348327575728255258492470452704258920461298225437641154249481888087192237143947805411796310656512191138629555279666557122333244803756577286887501632314162770617970064401783626962319950524158923845138939649762251756759762119774585338772559055859463599094869423262313306255644927649977403492926253217608523813644206820059309357940964633363130901166057002430269910921882664166860038861390305316020579398429144038386189480114288127704265879389663380565983482028227028306457603727009698486364281,24531363009049563762536664273685630249930678743601473345646756718446749360580428942513295608401046098557387011967587876621178423418085640157221932880387840241062539585907115950101921176093340357598786734576629107604766098059509560466283874031181440387973563913507733219768477775440248994272649062713092103053254889978195382189063452107439308150731662099755008823588080977928436274879799764825887538020606485093127463680041134931480024720440536560752357773730443722294290727915022250638670491342013254556128005158924861347226548459626859027825687870031912255326425000561908947972742109607669897905187712585858898757609,25485947141960036800495601740358196336268148055632283852581334267632567089581351729697672659186150817483946028874699734841543360085445274610946793774678284845142698994270979141586640525566502581978495871744643885460820923876472270768798335817566781711314773489485670479771252073613546268231833675772584402239718946768734191504723089294480532048176604551680713541748910822012363078082926628834536634899606309021451196325472880525430322895659546741570135136047631868000597393506058143850364801619503318165686086392731222189995494225633540472226098357551602534472541794408218767265775850366289511546336446350346021282237,28927199961592509462716713052933904239681693743133323458100757563361525410670677174848159248824087482997906403441479071298957717300803186875289912194352025314864665854179681659546207985006650252942140268140510157106320849846175665072784539119695315757729095462689260495430463870222739869312073694346079553731438032339737072477343055235278557275309616493517920166164080693605271556685355062728635594753076381152709174590915306592547837200121302421882042327338955791916538647734045471143845013412592155994390976714634271247514800401724247381959070976404354024140134277339724455784411154537706347451440209596089260579033,23535119694477523772171748044630208131923028017288499693412795663706886468394056769073862998142660508474676105711590469240299300182072142961838102383606369450702330959729879893242049940029310408964084662077585876233411878169942718467081776763994846585950049650660912827541883992039288017630464390592382481783566823924532043610685633953209522603678841504652207254189077646669746333277037092923165111872444873598439940966325805716105630151638779643981500665152639984434504817034412086671254173379166038071662889121653550757613052820175939040916661555723756176613161036717523938816196299007092417098079561970714605061629,25950783447263038071689830748627856944354421735888733670277679971199180982562433131778324823115329151828330351648021612294094370722267669972986008148650808031918722892417970047773133521052009921040352676366121022268583455702531977371124075420219730460605780729481918672698487964603151661149289116143779941433746038933525309985350586367303720987487112290090195247099032317451409521767630753382551078895196505751734814139673689437231496521554705226938471456297964527299627857211400740652357956604961830754401147898467475649318148547949522809325493238323065337997986089837089904293908389128632840557033917922339991780941,18687318215344566555182740902454336428592486945614858718824661784376438207943593936740995084200358460316665071770681463630810552799361606949595415859491617650913620153502889285378972038135570359724693463761135116433672709408902151793979112715679738392883186006369274528906256519536716049908878346476950103274343269649895419042195937774381514132210454482820166758270346958078142742840173830940449171621914508101385104081796180941351697633772994457709351610367195330318869580666697900958479010130985251846923421963647318437209519428820003347978947799013079168765159404172743072632243706939700207639779907975142224264481,23171083837957860801722218699383337900446240030786871268841926233540016534306722256418697981846104677203759841627977766724259030420015851980511088229043403050763668171722648141766116654882525867416891436685059276174192868946692072206824573955678962077288068058032958478942750338128252470165933443869447212456023356245726416751721989152798706366691818486325734110680894776063318626260722657549472271184224308146689662638536101291469177898475337027531732897213355102104990685266062044811809193138366772764276162181116512200063463469172637189164324496242489479899844513951546392297220122152709400797483802836017803985829,31343857270714098359641269819793471247744609345771779520849062499842222751853736635128030263011267623933026775894009843057499037409921342064326054830123558338476304900840753732976691522721379417037190976719048367738172877422341695489954487825668390415147795382659776979019893183466662138357984500601883268994989224933833342232607751640920642550766835871191739404896219865225614116435580799461951708239551693029017567595268404121330207564314786956323833427106966279493560190075571199071036639702485305576334075428484139050116713328535867597124971991546934922511844853709001583656359284723717084806850145785405536911177,21157487427733991932564510362138492162446873104287756897983482468142107066461483198236006898398559574298806811271053872211924774119515269456039458266616445024300383802406544466004007569246261860103312006457776588799344222340569710165666518367783547810282003032927364478322210948885423703591814633243286070072754280297773344097615910071723846039979528910869815670975142743376293197136856592859188733532786144697373533341877747464753616005694543102759948736736802569257325101204596297349394258616025918915521692968786299735438817719576226325356937526633071323693338940757362235570825853130085312301448111119042363796113,20871071186633559430638470998115518791893553646420368867902204568431630269565952322291766136370093127894084798814242475456617969102595313205728405129168253735048454253508700456761223106599134617920774227174015124829476988377890165462875183814841087993485125686632410376362585538078467534668954228084080919739417042353928509644795709201564083148094079836306167650314513450129297783489119015593642581024870311297891618816623633162063381775243950740681581620150958717466968747843706102214690157071025611480716612116918336154774385432247274600064909320680551901771492165221773721500541614228617829117370166464409020423677,27392140202372139560911530190722295626016991167776777076251374167016701252229100335980281077736021393527993281083564981442696373714433732500818431355034758384480955155409564373832745499649881975977124862697809360957420580753883129965594447943274206109113518479198329538838000642865155652137973709624008263285324174285285129803357738290385065522262059795474318914719823768887144641758090777562619592046692917101170170722723905514971631800061092086777420826999668590868568525034863406950714560799453233548147404988580929389926995856613912328981176466707497680180241272497358147647189027922268738449537259460751070153621,27430458285560064975603737623690566617914765114564307656159371148918349993794669623672608540855772729568670170546349850367039352526804750358257162362490778729908291097260480430890476823722553654389178498566668573496227008913481934125881578164602723285712928871252207939941804689355173665470036039114037118963971589320342018774107583274314158608546842149328506685304690959566263296291871998398637364399822435359987280203416832697098234360106966146607816540746285266790106830402077656904149244001383199485864465648143588026246539864484902228828598281873311925831114015086450712030764672165915248196209070047454495085169,20958576649034914977467969756965874238364659071947031154211972997487243461262394795340258789930977809611131615831278870909123144191655991893039673506539165135637011485008482874021240555941833074286915507794874804218274011487390148860550531668300157069443584231888571925159473970195937554740938933226402208131160317818926784959057391389980505131685522579677264162724011263439981256344785140426649255485125637348357522582511064347878764724812085894898146080695383734063354384186594813474135513405234523117338489484424618032520881618202129068318264606277435174234229102947510033247339629069254901430086639327996737230861,25673210614761004254141737312053451635018146154378993341101985326929566270344015265597835170941666913606119762699769929117810862190840467973932188558749547474174367822508601158829928161219529997833862214002106486508027112865708012732033692783629855485545330232068552007350877531730729790772847199443436084419382562932662568511421420283558235026303217907581598166628555941188586096538364407553738314729036218493332920854764055946289816665260688813327844579390598566768671973314358968068459214729157676432241630688442073088681756498136814491310636028421098965714509622937097403466307515165856202257786336739101389349089,27062431131775909264962122516003720577621307700606752850978674545503762322327045712593154396229756047740198870458644425173406714147601486563284216353367017457813364860861671576291918230182938220436949095109018225648486931358793025228571750572403143070647269508389021099989559676856968002395615757641794675119572488971947338527037552287756390904188517823120698354616567162661395526975254448758091053074808436661809101512025437321837959528689272191238705432334775200965152419124620293521962173467865862080429867958898040527206234108561471429991355210673373595922083144022410446012714221026174220695995286555692560595981,26101397013404440939950108603288565551073409553356897393691328641679505760230621741096317929709636865532238670826796537369580597665138924272200816037026280780915781305836081579178356868109017075793286763556497902869947712856535743263321959264839901002581734771178344662509473227839268090064000382806059250315977679226653239225555007655990623485545590336008766750972486014525144801720879444739045959169483687885427725508164188831961197284042818573448808100923870021600896976125650269597381009562192855793477760166114366163011349461311146903814241124631772470784181050979028948750586113514587005436500903242591757553293,22437602225740742482465534898349205983133213895660550238212001804732032977697798637757435728694311659299624886491819969612531644822478331097020027346346025174540910579800256280214031292073085792970245723432769912206355626120327772649905875827091190500315669126429992547075064736037570537735332469814000462556933603719315364923773085086614780916637137068518726889173784282955430621992569759561719528189938429235007732504425905045067985337249988673084527372002559031400047880307427208848753891291386460253720313523072063965808016289774609282102972264056704286287440985034888143293816594327214769326166521224390393446693],"H1j":[16370062914568124684409954423220013634799944354368183091925443712820668316759795091290952642141219645055533606292548565759917746455430426634828957426644826424037530474618159463204943752577732484149675671820306363344833458247384057865310742915406677379586789735200748327711872632191061145184949312294612467345847214916930759229195852858849386686352293049987465485866498220082468131280135383612600619493426252446949294373638968518891137429993551161437309269629260378927918725566711632082553316166822070110359114229533322390061282040482480263995079579444943917107997110057038662405191417861817663789094790962966996587522,5792666313208572350705907594949414590804636531753541567087068453778543363077542142305947911768781865374122070750607847515026168979710170113788718287465368491981654823945993941924700096393523941715256095048825025361038086570514643251828085846380954791657627403414038681940866434304045104130214177360598208974353162505514170835103706979081795485247158115653501838694614859268884296606546104394637012764653804556264770973741677326601115655746125293204398034469241183574629519235451142797709676366285591723984602961129858687877266469708766607187000988412118886394000517917001485137799190522482532376333362935442751367745,14510201356793997359892744405553071944121896518459738320470368478827891282273167297002903311912769777071155241288755372185351193850631471716718530488323104261827697027757019895835360274243188719367049075501436153398857359555924247334095665350350441220453460409146684994664351725204034521761578947269005519140498383255606322844603919000682223940913285551513356600061526959181206093504072618536296265435830192715190515397064435874311583709516596584871136822289753837472532490128304199643440789002058080030111113389709287097531544417461853059085059819958060220257218705882557929843952675556987949500595639655528439052202,21994027187251658420706956116678134303619268245311594874227984400819404446053485122189884678892175444688722527594580466254690437593853064923544979570444911946308283663229116693350631331935027065689358169246815279257122823014594309629197723508317910829246255814111959552337648906237682616732913305786178221005434606679461852547394872592127050442856550471832240167936976142756988960345619830477159914332536955389792251800932867389016006568741180137556936582683389834385412181167798283357296952856933963222988284608097870458140102834156304710781157917296313315513842893014212063887070100364867105131178923785373561146050,9913834538682656788610829579771569556624609911472542281771864528920206652057360227595914694025069327892774241543292898072673087864732558768588752951687639831868499912733997907550450742144719953844448973554109420086839278177283587750852958353526057789017170152122423018814264172807655239353760715885145548388992476483731471865364270428702324445078126354834888878640191523880163270112743069852403951565444480363239177556818094412397417215136415082364220806171351930690164376890892251369372868624028034980680685551131786332553623705883769998271596791035214982761974622986462384695349153129828098712177799482890430520965,15464554656029222110560140639422624868539470020281691165975400448606613120973644407534365935510334228227263162749065335291017684520353168923100727746351715681760916446206803485743114757577242723665933043744987644589191843035807511863595701170012104449542518101585729174897996392297770818633483533801844500665798250501473521227123975005972911918718226524366806206633841675388137041998857549215313632375036761617534744890091542919972307048750757690677067439820416806817051344016166652866968067639055986253789416713411110543055264622333767216550525033482750914452894139691102713436731472281130988207399023815239852528906,12865788614422531768878171769038267076266208200249164027644212721909963715015912538682157638127903293282023380796412378159235431043017021949518573892381565899437599164703723050587964116914107635838030249942901605297513982608974593500166572552953195544515492725593747884602852061628830280449190167844572097543184555448060083835007200101317266753106995526429573085540857281097156159258319440414895242242967023265742835942344738184941128584859242462621792495405423196954908356769683815889035326257091875874458718611430785903143039161526479973858541524126951528796262613552089943663340076548393182371918642954593889432834,22194516202811321146792934079465991238594712937226367504517257988113211333368349800836879103947252405610400726941861867633710543721876626238467090611506859331575128297406631557631820626534381998686705168632059305910804423292984195597625141279765512951234238593649775486094326905655122386938572411401132183960062730500896105597665702000968846572795357957098192758080717128908256523579293163137417423771381528097786100281383788052729825837521137512379280310081930804124457815661946839040621474089357381345723789618079958299474682840114875558952249988571746058484000722421698440994062460208554903525444210802321182968014,2022329329707369117437055740094404969047484980501833952214571687130852032499620508208708908589247080600189902502365407836277381678968110704345539053376355432754797822267575827372488857681103447936055038802753292113151984972961755143427625893918328299356797405969999266508287378495280713821635381697950988327467894890827305051792226857027384943282520470216088404776455333696749084292781033264737672933515625823807581567568754027253581653106384383593181057349330506068884659072076739226363616897242406137010778123983315619151551375977509919335513557274798510437948502408760645678633359245877721858614575061700591393721,21638702445456858422878500352234793329413106731788942261751796025224145517964611169394617788434763506002565806620170893339110273126875286455095506459298086020278318872581385674653253080383128797980439557511752718258375238388481802546638936192461482797150514683008473213407715728694302414916863995043974867827876036585791719812271742103323384468954527534596036617313432433874380308883492321501736879178345427074046787174556058119038049586737477628511165980047288251497278209275581664775606335268904384984155864116270266473616061700061527150495070719210903471680082400487754898061609554671248760480063619759950744280907,20932768206097680299943959313782719928339866139959731166252002876096405653871733170637914957728294590217455322823662941811142831487382716004980657707514358763150029924714520812685697751484102120909926147024006189544048800446501267477163792293393919588659127430522309503845365000611784195390022621092266420671288509706282186373855655358090019051530324622779193478505342408854462043136412488215465955955421082850282626458587043647758494935495915329050933653468179762936320308005669155322055934931071589853638981754901315764484414249149121368560265856082417024956730272011998498550756243974623835494966366962683389714964,1365816667585940330490355905311774458514715320376130020996515573937571923987574784307504874484515899610747050162880466334946062918938639620242137371098595406424267003818882220942016240927776918797542668204898851284066695289242978919397682088055368818116198595348273129318762376760634794532531433638073562846988038755248023571028829475051882101071203979111269507596248527906600986677728810751499828436067766182628039345309355341295172437424660504415028913205507139100147921515616240146193076677157859750716375066201587358526136840334151066553547201088947345861316322897488659331106732575557394540428972305438213375814,5703448175361065536885380258834894924349694750000788978424055908887487214267289314410654116737467233333514153490994654420800717947051017245903088635547080581089891657444714373263301759995815635072257679749046151543038146531810310826817366207696928190231298874979984114964348460891792295427444943206125809938612729939665048974349693961742238426880015130297226114935093282566300228257419316454068258492582819117310017835605391570376283517758701794125467889060184214275911038527696714000045849219024045243597506828846590195831908281658454892131533791810760325400211405258812142759529523572815227489710851557846638137542,6412242406353564485058502679404605624009190790593030266854505291800626778702270387175472290319448965303250433574173375628339895100997329474893279692868549940279796264731093585208695625011062617868491258157215447275957107991387222489580499373804335870682739788296835432969262878909434810429803264643527538555130662379672012787064972208117475596665593916782896686056579449802576468324812730306559649834202797329883549294599723290402017221639617907711497472325019619452322282704828796586508386419927496666562295856731151167316262475184222145101211618002798513055006067228431048839763646095282531119806559583105533794495,12506213831497706601305625665856619892819919408470741644330076368184175310515183251146177621238406207206410185643656979107225155831507800032694528257147716038515158570256044209419514879851010106278924359714862316802415670557334433034976750101928783991744583819411313589306343712690219032368416678985323530251239318661396466801994308940886752046080901718450406046375904389766893043894196541576969928137946704159382893563356338387889137855413730990126192021766856444171515497507122402917749807424621383187173538906785892654668489198127757882153223185090960714890345630801099413698632285321494907662894187137142803150791,4340320683992731212484211057800765907410470847269768304639037529290512671362801376775768288042129836088810539204858832843247178308000345604701431226310915807542068901686097542648829915466491213307097734259829414895234796525272600474326857346693882386640793824277606043756669695477090601330450743232413209505539149906338741119182508496705355703793044044384724643256986023764031438551900073624644692938223394706241422593949897781383635695299729171084301185179708550600098470031089086344919627503113655735768701217637285566867914251954499504690075652022468818725559007318841314414541437592229352428286215595483845053638,11992304082547451264970842283976418853821301172975086658682116387543359417074268643442593212371361490968819128789238354995117145993279593426471336648259583293294202599078859260437992548184464009386152763827946804967424362206055435693041324410893236957405711025923054702040161696386453571055246924713260145964584750230359074777621444549946362450468684233332414284037283955916761049858000878784786268023500095161975906495439332741618288811384519280375489794382891880648564800750663555801045203854227681083222146920912455217541211811955477767635787030014152643158711960638325867606918508708678622347924499914937535267162,14695333877946105505101457937623624377562698430478247685331048607650568913937201633971254630714736577175024535322415669442798271475956496536083972430246897654017678266490639701809689918981250971730052435032797344400248226649579239038593902835536123498617918666329121083751772876090103853533035181736615043011673643017303605152279678650202512062770466963460251942403425462061196179491356440328364636048438335959347603428717042954470887883300891927932651483741068303515425618933688194621659816079976510221005329843899476003615861655015952079393164902282608831513778303062716347528913475870793908798463564832083549613643,6361624891550612817090909815430156259585522002511378700573226127309539860650523892977168943678195716824260472829831132024282728135758912178943090813161584286046605117495775878170654691942858452263763077967647297167266507685944611403131069163214134338169098006751105941940463654618427873599267528041887836331948305951890335742121311832653316741398094161561749334956600724220433324620401615490879450816097431926849306846384679126203940987154375373597650036103822699248044107851648286585837187416880739896147553285981829664828869063480707437325000260106329487862878699057790666160151383639198420965781777521408308842299,14948927140088320458060089936345715166494298631495857212773926944790409869483957673185876995292328343640197788589621807184518806705821872810447516194927678801617268846361533345460325613772855110322242304569109406957894646727384216069315325052819333705539766154972989576988248927288284161530384846682668538198851543196833452065614949748530253693700328342501577900059842225778082026779632761099626760985225309957646536118173500439351182747667021029407125807666947346322131872894915154624415940708414296769044070685030466034270063053482191494419465005898644603408406165778424189251953592599788015054586521957253320449350],"H2j":[9653640790649475435050720061635061544335995170813227062007808546473167610366804040613054457009646767723479128021709179513573358845884462519136809844401815066012655857973373223748942767836422506840658738556503260986697250346171921063441485400421533124068250604530993514803166454504801884882297625678932746326066096923436475087338628767636689481829832307623108408425959669915171224014581673426602770656342925462023157550194457295116217893440581116140543598050947318929500123378985275492765280831578803707538206440354119287576298034238031692982504012470196898579719660373199491817717767711160029710911173725338539566802,3578111860663702772408903345930659472256129868015762875031051677614699117364424442270785915866444756532836287879751640816575659073006676007210405202315496945346450727441553016187592354415793891110773645408147683476571812485850037389853330648238106038729525075512542830213816094853869971661719959033499816133612736102442725651388405183329714325258711655979055386253406319598230253658818466953001815116530962213661362799968355793928849708876651937113231862631691372187008559216884922263381652908899796744393080985272287681952842592674663712445064149288160957033524932550150413325097150870149209345404214256294282382085,2562656890570835296352376205216590519360952576353253013086344012422175466058176642832419040937235521572328705583208834436813588375562745525224328564354560731400723267162764903064018742843839822445601315505274421672289602485557719646504320106522113645676636456687468751723898215955665240524139836668877382766583475339565598073690853848639545227831264115164596396262772422415214665834769274554577301336288865874066248890243346947740610544045667761548206600923673948174739356732295677551749947395385332556227074205668024351973201205328576603362256016900712683688241615565934460363012498930253514800348031700419220337084,22298685304249156715841839507145325522077048988910268345524279200863227356693376151033928569980263444962701165900514081299580440300365488019578288962534096517468902687907593109404000193096117803450936780948162440311950526862133749440555125530434273281017640257175046682563772712146188162909037424635371282116160809281350332585723737917537784267577381007869736550494661878733387948458251550312048040279754696568539248453484809390032249968377837207868808482658171733689439009562188880777607125039187467565549644537971596666666932158369857160883674108786200103009448463903055431989786220430290067137368612432640074310237,5879475324785385886080118453628099122983640585548725925692818787221734315336181255707999432375105366554548265736590343628955580077952532008988837072008731794155978542038914506112861039350525606157951017828660604272526605818549217659336563240062224484914310161520768881507503977620229908361541865095980430141394883457555144123820008061398004875781145432780438239985999952863196781468403423593755390719871396312035325131303835880979744451815683310530516197085535308856850866798018523735074120787646575912319226234213646284739550604897450763442470406797690674949855848424274918433854009972115369882751833585035329242761,18385446607341413929216752317617998458160849115285197433981133872531647462267817752048089105851349541660795002685652456000086108157981979426453705134803682299691630928200421847304354380350114763235863451959398215394354125874494984531309790405988904217354164073819568789120760731377280912128364362051769093741704293517942028826498663326655241508795914202031051398724638536523567800437872676476082333745719105291491676453403521845621182329449421075607837301738332926110019535833222421409565228043580701032497151738816862657210572819375918881851411438625526045192015060739626198734346744421593858157488507552447503219157,1543023308301318791291636723263661645234407352972693347930324541592073282303070472660827743672362126204249434834670307886593868303926045601951702434485524524299146190187978789568968092026789881246345813079894138764374868096047892517784410005345559357208978859029831295378789933334638460830863012154730679683049737545160281582305039520027158141403805442275432519516975114987511502563484403828987844187725357101956491714139410763551382100998178318863295224089354110436171289236674317711473441156004575613857935802947903186710273135122934512388821226072049093290647716152026391828419205457729234939199662889356527012444,19612969155814925927900736991694631498815639143900750081709470615537990112217002271570654324774711607889679093067885009086620212727925361021546388555967618760690930383917718167829905900473725102007606380323545403188303409627969907029774876076466652636827981089598601596821629485556381455948439528301393466043329774616323471054547330305463639720319551756652789237846520745512886328152641158526571443916940675394167134193466655448590323552123565655514390433855054114283235652222186673800138041449545987929749641868001910765212175435331820335256408276886037716378072029444719891008048297796893611911457701948988529229282,16728597479991680407332164223276251930971882378040601546182090035388885277790620642130984559023085396113670088325023048100279567479347085329073035696608554975777409036805727779421519384442869313567486101701856985975948368091166211269762554257345698853374624187196304439193724792774291722910128170261256918581442838390388813651239625403911503915460141004046718650178671549506593787333200145941149923809156438433492770338609398675185696331933468246886804722117355530728325631706711888199439210221397335620762682713255422110226515677047306270190770133307509623731091673964502293431264279055367772707113499782043802219072,6959317283624626561280838810011851848606573383456333866356771642710009365943896928686358713606049305764133589953562485262421030190625379899341516940088176438653144375343629199857524649360799157617467464667207079997090732685762910728717721600193091207478294785009859545546272657408615665578978698966309579302786158306046780048259033960048367018506262121833776982527433736628482989970739839626561164331780819203300647377931749431379962789021848504353274218995997754499900534324222498419599756583548358913120017762065234354717544865856293340540081744252368993926137398125931373959455585431506453093937785431907339954440,11707820384786665143909181917722140695066077204138675859555940823963085499198625584153264077484611920625749300043796981737297557284495008476240804003977980903028035986014301427047695461308987163082644181568819427026377861293089760745032220979974314071873695748444473344481739404234865330820136242966321355292830007655295383627072182012764804101331409332152687101319613845603099019594628684448783718018158413013589965095889558760502141979036830513073469713570347578185733951700672935586145889495063730457422516713768592535269075934288536062686021973569079600458124449475763651523966025703378628943004868525425132768470,12680113365919882057574106113475868522128522384382601197321116786250024227710942753687346378669117549887826210207932325610070970266526443555090342822407043741408930676918514338947859254583933603158241276952467805479024344654828575004834480980171788527657050724406198542408746742354531228386476751247072501617975174749412587537766151828306153888252035411082379552917399551115964687725743020641384211728557413837203373250893065347048255589312756928959773947595990023044227966600250595372063312552514516053386563033360883348059069724261103859193470298590631028566611086928803669676829225666250863192855787196720603673760,9019657743968669607069997647539968262488442864840563257526073127843215521457164945521996034009113740811008633126128201485876365964359243077677187550395794512954090076458031575481109943534530172796807658845833964496790520042423061347000207701119849250007073432625973802817311058171823571086584900654526615124913824393095137876668486739795620319593113487319306758076868523633806281732675535191877729151172494277333403640038019691517232275137009983348569240826245496914996509643617684093222096189728055561573909735610063401084000594789204303691795045753669664876756897469727730211469836756344045393712182476806348262481,509727692658127329234819348282810282823358222955712460979035976368760532139665502509369544837059902335508770138210475703837249689840377266421270410968940058538125244069674567645496962345390684467242600183265156396927471901904730403435725549974213712745153254130090979413745442250230122176329142735628394058559735078808655502950813887104168441824680204081093532561399756958380811786995754253778833219233414597390819387529718886819478101169481249247654168746478268826094117295037052091370216680279456693786586815595643437522530315484348520350527079378100131478937805285900851443697897872168020710497135465069780807687,3842294189873253197555038084451026657880884971357471477404186912118522652991181539287485996470843289095459960588932515934990566949413638625169611068786524327230092661471599333492933504858312443510340452825109814219748343465626968500133039743956522352452046474898271016421645025612565409422475581907506677274527441400119913285024497410632467771786023570373229380492185234340140113773065511943229164821322784643171443642045254567266530741214826934397811463635644370547054062567012016231228876473774669826378368361454200858389911185989849447377758286974943747417740672897265471383352127822433439855380640722238771424561,12605457156020973444763168611522695283402376793806466187139735133742095649198553225011255516233464381926302993187553632508703365300132776800901755737316341235931477791227746456204649162573568121476427289406145613748980339685673661511024577823438911510307584137593479079190723698666793670318162798116104492476114229973922338166221669934104784402698512349426984473431614385866651807327515058966935011035923319124790759086336194395000632944700277782112868323483780168144642250558671981757792078139349701070563555668082796938131863328410412160150471825619049694173807371104601644825755844313657731729068891163705563867555,18221138784555811053296911040444811422299569221370698341523745856400091281377839778678778328149110548534138934160836481393838346908432982920562116626677959686450236292050295531261923474882738697393510842972966810110218027601675376030586402861098487543863740705626110087204717386977952136809165092530095562928623301371629208844732733664526090007002304626939446606391205626126192870615394522174649688440887870385705569710809581575204639778805466412903927058799148697158251622260213645585723159916754663707237605872275846686566820885362722073881904277317597403167380835907876296870877478221646920284310430371934404822311,12694464409184116198175216134705674117698495589897734763290223249700439697747213221960704240817308024376618649511257185410755720163743943692791263666036558979570909072667619923266653682384882259644954119285287063471541002032435823410204495631358202104734018269537402171761572193134509812396214919229814690930600798504895496564687656801956575973479011431776352638782289114699743527186781919502658003154674450714069197242726393985114420810547684173494018605147976810102913734546162705259030658206284298418521349062777115509219489672039075093329236647292016824670535351144784388483525751068225542810044999850751665224074,4201765615355271720665237538919680402664127861292891404309962354268106831635826650331041297039291644925592311983403700464576600435518882156854904159089879201301912105368413055078865795374091914623189759593456721300785707753873135853357294442043908826331857106210726005526370024055346666586491341046296314798619327898858072624823009991437876242325624019938022318176060332738994176297193724805935694309014605422020909137014676945305249645201662101488974241605863532571828450201507584679493905057922784236072997143238879363168245889469038437561181276242698369654938178116001428367837409133015026021079614840533626761027,5693818583095067032554302348404689889827513405370432124730856324552577938645345928545249455102636900381970277642590696482249653647276002965730520652542065397111012479589269283364878130676178205766673654461574816233876555267291293343730094421360715866449358521574582941335437947403997555554148186986038285554629922609604751054748762347310142603219823359220130919495866316927224981350998367935679597793982889611172206443879512553133682522147111994374985808397513270886689704297115982752710085691562031953231724109895260045500479387280386873351701423764105530811712645875225583048344423503433093456461313617037044573606],"BigXj":[{"Coords":[31961961449149592290215619337342545369164998201385135329342844666166714363705,64636392625998908156106021830673034903148364934246785109426074897879798496695]},{"Coords":[13561027879868215202586968035768135752207534764402067848160241312364043370282,31683215740694624076579960720726613640416539517460242899883851320256877874663]},{"Coords":[102970472861055393328233354777448191839076263179087526130927097177204776801806,19849778771794568183958877322544789075545226949228544528619329359950140265115]},{"Coords":[8366486354279759555693815735694831293559828965602250556327317858912116678471,24456250444071880675953816335612932507033433175255559522554349078047625549678]},{"Coords":[93126246885046599201299142306317944158536766260090154798797491446571717586613,101632074177392193573512178573083324222329391048269493231849116848088552218375]},{"Coords":[45944473181199785374833853975473363930687909609574532965286298616052742734642,49106561873713078177518155217967815241790729328033604070651886838013799968339]},{"Coords":[88807289702586806295763026580879412609419986472794654189482668002118698433065,66889255218792877467551818840857264643456782872798377645941824720058728156412]},{"Coords":[45745777770010867130655637386117976632006388263133845103488205463444756286557,58413618959379828248439575493421719547880693819703454359788283537541749522854]},{"Coords":[14931705718614911512649079486924798218629483414127465950786381421646404878840,70853895869521315016717813866703398949051565204254795550601147911581008651495]},{"Coords":[31702825468512650039750289022997764002837389172468049717092331147393818254752,90704921170203464181329063311130512192295590723462840980995045506481351030148]},{"Coords":[108133277897421036808605843118854356978565880360693563552498521263092161957794,33994893650793696043114830343063091347849012751372498052809673503667071259863]},{"Coords":[13603746174106309213882605187834221055267478293724779491981408043396477605150,47502402322605913877968636451206238145707201411072573659819652572960084227380]},{"Coords":[21962637032374642863765173367353663611071785709723940819398260699915154728736,65876190623954751874122457014542214494068664571689464338691288646258987627994]},{"Coords":[8139291295258406047002639746372064115101651961499427493344848502049438028449,13643120656693319356484507306610353728697986968072320539867387334577150577786]},{"Coords":[871083651129542234211830236854985246175496411885064575219875767816674532739,100904963893789549224657775356884044157291453214379932308347421012612568685620]},{"Coords":[98028745019433069815621229762947408124245116227553507407780733119772046992520,60367568163137055112812282822118701471566204774343904929920219271364583776122]},{"Coords":[37332951852807254347441974643993866127041633128152922228434313154811023954744,56046459898819968566785812285970001512876757161864884424831574905585289505077]},{"Coords":[11223798616675111197150792218010453124916879614948521844981845491687409376646,70914747125199464172751182264377339815163078089055967502760766110580370145293]},{"Coords":[62949410140974969962342726366577125978516456835571210444108422984760191628326,55668150354406094271153240357261264601037343235231498038021007487545647055721]},{"Coords":[7611358883569187056502001665501128526153865541559158134839099203014115911991,87617845479447207941483995353359860120852817257735643485765526341493112597509]}],"PaillierPKs":[{"N":25922769748919102678415192880711636156565612427571550685296776086119205445525743826557545692077634738129321690187868055737306626420419536394422682260657759329710259802294458956279773225258250955469954464209933873407784778802101265717840506851919529598154066919091078766953942869622551929743069097967501533345363150709912011028449270819442207860620552088412428865900112120786495620291333470644949767300948329241775121748888220588626655915013364614554467190860190736954650967874940702908395331234632114014125372505065096924932509595285205788545338407476139436404463823043865599023326570565049384032977060875483209339089},{"N":23930233287283899271771864413305422456138957780711273892670074191715648409585503033095084345383391541524625291548041741990557564183855401706042293717552023237439032182637019639795919249455653535670614575331737610284863144094845900714497635996654401300216924764570210541950557336240993007183309433063094227377624710274228010652758134777897718742178998545079447283838099902510469006366469099975469096355736757507201973304413688395278990349533350163833514531655073848517781662614171483003731680841330633223244205178982328422170273570503713081265847261211618499950287557687314846590616484106774575999250148317390509484773},{"N":23804125140052077689856128298352557083678652474445385365228110453726681237860799979845611556170894187976654278582576364089033396218674226546868809651353049956675922595541689542576794678062495339422204984765419389268325283682512000995221750412104207394441438666051694475950049774094896290106430636216894744335784327798634247450687264677393229214665686649911456587168142148024558282134024448427550922487022680890892554782651383972136386958126051377715096556862662265886688077689941967157694195467190297477735450118736949849327358586935699405848605265912107169200547464609552395233560924746135866463084686118233592906569},{"N":27732731445242071631661957657712700411367090291795241371771965432140171981887215839890743735562516245338158767440902124645306227526755834590210240211292920385793070069156192085968959067158127765511651425539136016999745924428061397793021945121990437538890398656832618417715425504589084090095239114803460787199036351739230987513003864153861252195944069425337294669643857426654756086277471320443733998616523518289821541295617435513033264977202437153989318832642208143170451837926277566396048774049270318848738844338850668187024045715008196311523744942555689097435377598835544336914580911633671909176827168167136470690349},{"N":24540078122494262833119917930091872139739129939617606686122284549157786865278292966087938309454800165081094474899057524752572006230843959997841521536274236615511587750039832014979332539924539915807860222967109230298738770371871063759834296194059907031260324597353713442284471130560805946122495294807423458083635025189319558646442212459161798625793784738344309603016513355951936699928410805609866016648244631951643648288242475041729105749202516848107495430809184564037582943457286768883109270231510808158554549441157152513493684930416951758705877335895250913277012541968048511163986915876606316087458297080987346429881},{"N":23068407873896187320610408658036992760323120237076281539139801143529656493030091268390954927616119732305210576479622679524747880246080257702939099128994719527894439722828526117361648236913823027514544862046712398251734066527697676237348724465158893599560473200351530224245041596340220963683429881340553208409699594299261181212989221107530971303522686320513564226387471374456547377291192484997988606654540899634665450162274963086331783789860908282085692296248300574631527561763641974772756130570734735297575564567681595756096492735284720794891113064512997620639494646662790341453069978107064092657029168133504185408209},{"N":23360724885676198523522179321150194474267520026708517257764444663025119039638464657158724624502663558960702469988070676415660798425916276572290617437202837750858738892140118363926690520956187802097449221385283612203760207950600195667994976400493623569930090999021596112553157677485561299069991215207522767873493631366488446241092099654975621689119086509041077742510323711222260189730828492291459421830791540197321337933505867430138627984859014648102694909985043765241359798051875756951108870386862501048751981261038842763679815348130953290890391440850806363449637432840586263665690832227799688631446932015796916844537},{"N":25572476038149983843824758627743773292157542015669155545898739136432359227667585235619146413408812705275735125477228881724887114180658812229689479785083051083069428146070988730518675361280497876215801249358736365876007532614766347833762716625529381645528767502376159614744663698030295284120589012492759402983796882103200388651743368106596836536656368370930363045639317610411594882976032564820311800297421945366798108347221120736308176815503106682839506833524058020959093518528060465861144447540812579976237229589574562145541453749754749768478003306870660214131556451734687719631047077200787163529663274266186702479657},{"N":22679491499676926565249058751269701914370165376325885490706178594236435587374452393672919867257890172146499232592163563478749644823548404207107209183759523050603597049541204457028947474998785130219644182203008088877544305999771879137962239304258371157231174473491797491114277983084811723764080082851754276992307408859865524067180300336894890064430698022388669278921501809909740064260359142339540812296913591956784925745003590749703099702370645409020780887758983568638652737043891478141095930983089074418014910987946825193073588506986312390146214478478314600989393866198945700334073322066709926152728868061176019551541},{"N":23556951187256713732039305973238937631620385080790804249029259279472926645248156172448686117325741554381537031072742207487366612992119859269685828207319515666102872111546619607137952974660084980511684952594879342586512197525409799350424247192892012163769784591542546626323584978204193899561072157767856334488337110957680579926475975853118319141371431419486620931003438350760541975587261961199260033262263106014958269750801811225868080849204705441859105664948039653986722714354940941410686784948916936213417318953574086609821961649007609305029496977916873440356977063491030736996785241653241262171162950673703965399497},{"N":25874692591276389940909836821933328634340387691760211719857424847912710687202655208899136151842265948895002254373718724704209721944297143062448179072459504026936041473424765480639475272190837266572978737262449980766383982513621598580661341958135147571122513631091491976191663115339463730624237942100977649124658328431032849468551008597071378488661492324861414296280692846039598797857140808360770338990664282941023358641770157837364612463858095463039043959476170224596463891235213200808423306885708639894810932553685021558027739945539621344374072593175483199343233185955959027063970833388545231587659014590298587532269},{"N":21093015027631740022404443614096248522776233243516651444497036871175728958780883068858760981924585432192986275662870128643941927265524238598903061299795143929360395711020210769824764384718922898979318706735662563638859312024117764087176816929100038836825165997745175858151391747552772916358596447916581236137266690055236206686429983418915105841208302705945838725058954761546083763560226985859597874827308926656876419352353487645531847757035757295720869824004015071252605178819856102760159009139713396577974830023684477215548955933062314225333947463154019890073099705030557644025494887348484646782031863159015194484417},{"N":25298229297396047246415163429032546137139715727559844391184017906947304850232141234045323209407471473714145852636924268416866274482603754141415609592221706725085407059971638122009913495964543366119323417218834638913881087432600102264473788528537095668778412431377856067113698729914757144153775835786313302871273438949909936263664301138604696985912220658568672102041006541952444982579070062275651333990266954050520365848194152044834016212084441028573044037025009772616765171118784908205140185837844772749992941537017860827787097838183799078426827486346760690086948873222139803967157701952297751113063507286886770253809},{"N":27142202438632787162126599492908508783692765215748557510315014134009044742375492012422395905792294364201376442258017321008269356413320158807932162865700040957744157446176162447390298999320446062496836729102114052332958615915307193716216287036998207324413342337908047902088094382893405585342830460716335897834006040665407645344104524772021574862180664953364488173834491400964015536206179143781066229852877159880337660767454184922616386524557470530917791514588890903382115919687896218697262329973216887300329083882938499296413225108475327673886217363092593458630101782913564451822536507792690041998191978031482893873661},{"N":24506900410165079432913879286738242981557799447704277709132563752281068885918764244597103897934251933625444124974453530023693766922128717584028552755128051187819589410024704161034785358235535327695240184593017832269373629062497324651346586921679971074785452914954524453931920025017233873766495332551435302696547239605953737313669053194482788679487077465271167890491044626060923037626210805459313170671202877996680415217025953459280403666974895608025476083146334864242075064839862857242870450430867849337473211116054259839281123892458791925377357496234454799948092884977174468592367921171996109259120511593665944142269},{"N":26694966767987840469949338865344547117483340362831650227215482575365406012636774021468648984974992022743149425563486792907591668251920735101399223711217247824036472514130615393737405150133409306326610912172081216216331513707092964488994949651842782342704418212963772590286378010081225253538245220740244206602153540135126863052186543426616293649543741875882042173380956119737322204906042367710990417544800462728321639324791151406955584010061660628304199783826293959912579926890912970052339895938137461119473504729752401310289221600181057106776643382986556174592325963163204522372078262520351770361427042538592078722253},{"N":28161406783438289776782541515550232234219338732182263528677255680862818571394539837092411279908340595856411618560352096707955778113841586575489526111758509944691006867155143609674220650793817498419172979829028602046249597147507621299153669762040424244341554256616377217119563525915851719009321686306763607672801085326365691030132510560260181669852932393003570340516931927914922146799899039434467722922041925474101320996856938035131446584298134298675299397155375412990353784006913691603024110559796744887732721945933471868150638226543773483734660294313186275340618342717882057017678734282256333631978096376709630195493},{"N":30290385531723706663194155723402482345164001328034021287910161482488063429892351584916277391109894294446801833020074687889362652138426091460224301803948089690115686705682426193759251182110547546779254274419781083851169949275087832187538168815749507922889270386625094587688358817642053715412200458038741309360104964334706289126542952674791148655002683650712544232003067953586569445443104249283623297733191839471659254940888571771772980381177972566220724293577306168494057111878161156955456998298372496716136324267059071403030493623531599851487444134766104137251811774500492630476212318493040236485031236879687941684761},{"N":21891762840438596060416034930044842446937758373617708235288562429502315391645647044939378215035677465574183685957522821315454029977571728750605988329881847569313802549118091978526315133726370633285214423147938264418314863217805659876561184725718735591303337902948467582966199323804114988231963307083517180657041313131586070203747291724798899561367507615511932716092324516747320587928666160741969956121773346301706809405054989477031949248189136343469258532041255092588255241987397760849320759799542054627513230744643622791455964220513319415609245199516100422991698341556744298439022451385568791478794837569530013904689},{"N":25360934335416714794999313991057897528923718232366653339706494176825638906694689891746545886915964196582662458688535283322287088397853865709093712398485753916163063777301385991907720781358632265326870516346689492128442283774600103789825609570294923480202759046857115137927714980847316960609776972337028789163184648676367675625026306027140091761009104192786329465543720196130052658782412428125321357130192023653185727111578488774341366834046035305712205910649341950409228079277410881842097288924692206421126356254520404943323384573694119449632324221088061482676921038116252201661916622983158849603411299895152156469481}],"ECDSAPub":{"Coords":[92492306118178589821640584737240636977398594678247616965910942704932180187323,27954057508764275913470910100133573369328128015811591924683199269013496685879]}} \ No newline at end of file diff --git a/test/_ecdsa_fixtures/keygen_data_12.json b/test/_ecdsa_fixtures/keygen_data_12.json new file mode 100644 index 00000000..00cee022 --- /dev/null +++ b/test/_ecdsa_fixtures/keygen_data_12.json @@ -0,0 +1 @@ +{"PaillierSK":{"N":25298229297396047246415163429032546137139715727559844391184017906947304850232141234045323209407471473714145852636924268416866274482603754141415609592221706725085407059971638122009913495964543366119323417218834638913881087432600102264473788528537095668778412431377856067113698729914757144153775835786313302871273438949909936263664301138604696985912220658568672102041006541952444982579070062275651333990266954050520365848194152044834016212084441028573044037025009772616765171118784908205140185837844772749992941537017860827787097838183799078426827486346760690086948873222139803967157701952297751113063507286886770253809,"LambdaN":12649114648698023623207581714516273068569857863779922195592008953473652425116070617022661604703735736857072926318462134208433137241301877070707804796110853362542703529985819061004956747982271683059661708609417319456940543716300051132236894264268547834389206215688928033556849364957378572076887917893156651435477228293403914365215264741429649347268060372525691649430330377699798361888525573305233625250157761053388278937429245829461566805614221380333617774378553229078900524678009284535438133006016674765429769683682079900938097920139703510704176847513334862176642889026299348491375632102840877200669005958046697790202,"PhiN":25298229297396047246415163429032546137139715727559844391184017906947304850232141234045323209407471473714145852636924268416866274482603754141415609592221706725085407059971638122009913495964543366119323417218834638913881087432600102264473788528537095668778412431377856067113698729914757144153775835786313302870954456586807828730430529482859298694536120745051383298860660755399596723777051146610467250500315522106776557874858491658923133611228442760667235548757106458157801049356018569070876266012033349530859539367364159801876195840279407021408353695026669724353285778052598696982751264205681754401338011916093395580404},"NTildei":20871071186633559430638470998115518791893553646420368867902204568431630269565952322291766136370093127894084798814242475456617969102595313205728405129168253735048454253508700456761223106599134617920774227174015124829476988377890165462875183814841087993485125686632410376362585538078467534668954228084080919739417042353928509644795709201564083148094079836306167650314513450129297783489119015593642581024870311297891618816623633162063381775243950740681581620150958717466968747843706102214690157071025611480716612116918336154774385432247274600064909320680551901771492165221773721500541614228617829117370166464409020423677,"H1i":5703448175361065536885380258834894924349694750000788978424055908887487214267289314410654116737467233333514153490994654420800717947051017245903088635547080581089891657444714373263301759995815635072257679749046151543038146531810310826817366207696928190231298874979984114964348460891792295427444943206125809938612729939665048974349693961742238426880015130297226114935093282566300228257419316454068258492582819117310017835605391570376283517758701794125467889060184214275911038527696714000045849219024045243597506828846590195831908281658454892131533791810760325400211405258812142759529523572815227489710851557846638137542,"H2i":9019657743968669607069997647539968262488442864840563257526073127843215521457164945521996034009113740811008633126128201485876365964359243077677187550395794512954090076458031575481109943534530172796807658845833964496790520042423061347000207701119849250007073432625973802817311058171823571086584900654526615124913824393095137876668486739795620319593113487319306758076868523633806281732675535191877729151172494277333403640038019691517232275137009983348569240826245496914996509643617684093222096189728055561573909735610063401084000594789204303691795045753669664876756897469727730211469836756344045393712182476806348262481,"Alpha":10928104431684700417733708045912718965477943234179479443491190731544809809548419404610396468679317867934062508085119860257843555533387677855365089368513379664989312324252611915835847145756060080535374821786589878766218087778904579033462046562486236127051269526081610695928619559821958782154372239474927531246325953701149934936548137645974193148212555504579690737345202947507671469837555832941181067968832079002227290222942702339045018469021215049494336486662845896636796067178685969877024691461733107137831899861413698716405688483348579257680342148569869697506810096068917919901564290302880777240405235663393765269533,"Beta":1039277948865102195475539899126141492740216541424684503873954153083419358650544971410492796860198762992289579618709558914193861671747449586172085358360673538599436374468520530289360591209565194471715225795411394515219778646132112107790103299234421930080366080710312735560185886428716772261820540535067369856191132935335186343852015010793177174753371077193401117675783730891727725391088790884639347301233244772442440837288266965280260057843087943863825869843941645123848639618967273908660256558573601337500018789717965291574233171006199140960984549962037285035967151599674984262223123992140632826586419159821344506405,"P":70324225353872584915029067519484692578937467637617265785257105453146632527867665892779438234869979809458857178536106434306891723841620774429231578751306065484106286169799381617311738439259972671005517221188286647570979731216930705347454132046885393640921962237344473096303381845086112714244503031607702221919,"Q":74195880159397447403194619178745707891408299716844504567730537822187743527511868400500694547539646648063355579205522028136081462413688292178457841155413518279159317526040104802934439812496669926481648941851098394176177726278009206432599498118277852440356015364639423273805562934637090452276793752050597938721,"Xi":89972818073747572860817289983108159172128213945325342322372458837180490108592,"ShareID":99910913777216787121500121711080713911605201308487494263101624819470958719086,"Ks":[99910913777216787121500121711080713911605201308487494263101624819470958719074,99910913777216787121500121711080713911605201308487494263101624819470958719075,99910913777216787121500121711080713911605201308487494263101624819470958719076,99910913777216787121500121711080713911605201308487494263101624819470958719077,99910913777216787121500121711080713911605201308487494263101624819470958719078,99910913777216787121500121711080713911605201308487494263101624819470958719079,99910913777216787121500121711080713911605201308487494263101624819470958719080,99910913777216787121500121711080713911605201308487494263101624819470958719081,99910913777216787121500121711080713911605201308487494263101624819470958719082,99910913777216787121500121711080713911605201308487494263101624819470958719083,99910913777216787121500121711080713911605201308487494263101624819470958719084,99910913777216787121500121711080713911605201308487494263101624819470958719085,99910913777216787121500121711080713911605201308487494263101624819470958719086,99910913777216787121500121711080713911605201308487494263101624819470958719087,99910913777216787121500121711080713911605201308487494263101624819470958719088,99910913777216787121500121711080713911605201308487494263101624819470958719089,99910913777216787121500121711080713911605201308487494263101624819470958719090,99910913777216787121500121711080713911605201308487494263101624819470958719091,99910913777216787121500121711080713911605201308487494263101624819470958719092,99910913777216787121500121711080713911605201308487494263101624819470958719093],"NTildej":[20539613942852364097890357541124859329931817468396278432713468646303963073659662742703665137736867247354367523800071318544570641421320510992705137876681425752810096966415479528824625129989063402576946505816887222102561441464103605308386975248012283762854115939987945603503283072741824666735245204091384515192454349252950007899626081034649919068642018312817079235168086885705851677572363277983076857313399016624874649811334825694862350059490166759704819411086564625186038339099281295128259092469609539775245598320922394808913338827772001777479207381548603315272620456484970681705115865233047669675602308688791376160589,19461028678249357721701139019984545699598216253588699892259672060166427273458875608319855785678884811755179389274380053495578644060470229307987007292965327985966772681212738091909180148035785695413643708212165777295662698493311553457174395686873169155288384255670661532430410131045712913078128214239252258473814281283319061613409102410606683119900924722782015902970301519339718368508022893331969649513655635811522767629123667744907556474126774472529158147258343482417188228144974952598132795041139358631852141986745214674779692377899411672630850213748161088638857089501019216868292821676374914063004957409393293909513,23815206664659393600414832732918591362081086959256855451108811883313935088830793690110550688160373127903180149093000695761674277348327575728255258492470452704258920461298225437641154249481888087192237143947805411796310656512191138629555279666557122333244803756577286887501632314162770617970064401783626962319950524158923845138939649762251756759762119774585338772559055859463599094869423262313306255644927649977403492926253217608523813644206820059309357940964633363130901166057002430269910921882664166860038861390305316020579398429144038386189480114288127704265879389663380565983482028227028306457603727009698486364281,24531363009049563762536664273685630249930678743601473345646756718446749360580428942513295608401046098557387011967587876621178423418085640157221932880387840241062539585907115950101921176093340357598786734576629107604766098059509560466283874031181440387973563913507733219768477775440248994272649062713092103053254889978195382189063452107439308150731662099755008823588080977928436274879799764825887538020606485093127463680041134931480024720440536560752357773730443722294290727915022250638670491342013254556128005158924861347226548459626859027825687870031912255326425000561908947972742109607669897905187712585858898757609,25485947141960036800495601740358196336268148055632283852581334267632567089581351729697672659186150817483946028874699734841543360085445274610946793774678284845142698994270979141586640525566502581978495871744643885460820923876472270768798335817566781711314773489485670479771252073613546268231833675772584402239718946768734191504723089294480532048176604551680713541748910822012363078082926628834536634899606309021451196325472880525430322895659546741570135136047631868000597393506058143850364801619503318165686086392731222189995494225633540472226098357551602534472541794408218767265775850366289511546336446350346021282237,28927199961592509462716713052933904239681693743133323458100757563361525410670677174848159248824087482997906403441479071298957717300803186875289912194352025314864665854179681659546207985006650252942140268140510157106320849846175665072784539119695315757729095462689260495430463870222739869312073694346079553731438032339737072477343055235278557275309616493517920166164080693605271556685355062728635594753076381152709174590915306592547837200121302421882042327338955791916538647734045471143845013412592155994390976714634271247514800401724247381959070976404354024140134277339724455784411154537706347451440209596089260579033,23535119694477523772171748044630208131923028017288499693412795663706886468394056769073862998142660508474676105711590469240299300182072142961838102383606369450702330959729879893242049940029310408964084662077585876233411878169942718467081776763994846585950049650660912827541883992039288017630464390592382481783566823924532043610685633953209522603678841504652207254189077646669746333277037092923165111872444873598439940966325805716105630151638779643981500665152639984434504817034412086671254173379166038071662889121653550757613052820175939040916661555723756176613161036717523938816196299007092417098079561970714605061629,25950783447263038071689830748627856944354421735888733670277679971199180982562433131778324823115329151828330351648021612294094370722267669972986008148650808031918722892417970047773133521052009921040352676366121022268583455702531977371124075420219730460605780729481918672698487964603151661149289116143779941433746038933525309985350586367303720987487112290090195247099032317451409521767630753382551078895196505751734814139673689437231496521554705226938471456297964527299627857211400740652357956604961830754401147898467475649318148547949522809325493238323065337997986089837089904293908389128632840557033917922339991780941,18687318215344566555182740902454336428592486945614858718824661784376438207943593936740995084200358460316665071770681463630810552799361606949595415859491617650913620153502889285378972038135570359724693463761135116433672709408902151793979112715679738392883186006369274528906256519536716049908878346476950103274343269649895419042195937774381514132210454482820166758270346958078142742840173830940449171621914508101385104081796180941351697633772994457709351610367195330318869580666697900958479010130985251846923421963647318437209519428820003347978947799013079168765159404172743072632243706939700207639779907975142224264481,23171083837957860801722218699383337900446240030786871268841926233540016534306722256418697981846104677203759841627977766724259030420015851980511088229043403050763668171722648141766116654882525867416891436685059276174192868946692072206824573955678962077288068058032958478942750338128252470165933443869447212456023356245726416751721989152798706366691818486325734110680894776063318626260722657549472271184224308146689662638536101291469177898475337027531732897213355102104990685266062044811809193138366772764276162181116512200063463469172637189164324496242489479899844513951546392297220122152709400797483802836017803985829,31343857270714098359641269819793471247744609345771779520849062499842222751853736635128030263011267623933026775894009843057499037409921342064326054830123558338476304900840753732976691522721379417037190976719048367738172877422341695489954487825668390415147795382659776979019893183466662138357984500601883268994989224933833342232607751640920642550766835871191739404896219865225614116435580799461951708239551693029017567595268404121330207564314786956323833427106966279493560190075571199071036639702485305576334075428484139050116713328535867597124971991546934922511844853709001583656359284723717084806850145785405536911177,21157487427733991932564510362138492162446873104287756897983482468142107066461483198236006898398559574298806811271053872211924774119515269456039458266616445024300383802406544466004007569246261860103312006457776588799344222340569710165666518367783547810282003032927364478322210948885423703591814633243286070072754280297773344097615910071723846039979528910869815670975142743376293197136856592859188733532786144697373533341877747464753616005694543102759948736736802569257325101204596297349394258616025918915521692968786299735438817719576226325356937526633071323693338940757362235570825853130085312301448111119042363796113,20871071186633559430638470998115518791893553646420368867902204568431630269565952322291766136370093127894084798814242475456617969102595313205728405129168253735048454253508700456761223106599134617920774227174015124829476988377890165462875183814841087993485125686632410376362585538078467534668954228084080919739417042353928509644795709201564083148094079836306167650314513450129297783489119015593642581024870311297891618816623633162063381775243950740681581620150958717466968747843706102214690157071025611480716612116918336154774385432247274600064909320680551901771492165221773721500541614228617829117370166464409020423677,27392140202372139560911530190722295626016991167776777076251374167016701252229100335980281077736021393527993281083564981442696373714433732500818431355034758384480955155409564373832745499649881975977124862697809360957420580753883129965594447943274206109113518479198329538838000642865155652137973709624008263285324174285285129803357738290385065522262059795474318914719823768887144641758090777562619592046692917101170170722723905514971631800061092086777420826999668590868568525034863406950714560799453233548147404988580929389926995856613912328981176466707497680180241272497358147647189027922268738449537259460751070153621,27430458285560064975603737623690566617914765114564307656159371148918349993794669623672608540855772729568670170546349850367039352526804750358257162362490778729908291097260480430890476823722553654389178498566668573496227008913481934125881578164602723285712928871252207939941804689355173665470036039114037118963971589320342018774107583274314158608546842149328506685304690959566263296291871998398637364399822435359987280203416832697098234360106966146607816540746285266790106830402077656904149244001383199485864465648143588026246539864484902228828598281873311925831114015086450712030764672165915248196209070047454495085169,20958576649034914977467969756965874238364659071947031154211972997487243461262394795340258789930977809611131615831278870909123144191655991893039673506539165135637011485008482874021240555941833074286915507794874804218274011487390148860550531668300157069443584231888571925159473970195937554740938933226402208131160317818926784959057391389980505131685522579677264162724011263439981256344785140426649255485125637348357522582511064347878764724812085894898146080695383734063354384186594813474135513405234523117338489484424618032520881618202129068318264606277435174234229102947510033247339629069254901430086639327996737230861,25673210614761004254141737312053451635018146154378993341101985326929566270344015265597835170941666913606119762699769929117810862190840467973932188558749547474174367822508601158829928161219529997833862214002106486508027112865708012732033692783629855485545330232068552007350877531730729790772847199443436084419382562932662568511421420283558235026303217907581598166628555941188586096538364407553738314729036218493332920854764055946289816665260688813327844579390598566768671973314358968068459214729157676432241630688442073088681756498136814491310636028421098965714509622937097403466307515165856202257786336739101389349089,27062431131775909264962122516003720577621307700606752850978674545503762322327045712593154396229756047740198870458644425173406714147601486563284216353367017457813364860861671576291918230182938220436949095109018225648486931358793025228571750572403143070647269508389021099989559676856968002395615757641794675119572488971947338527037552287756390904188517823120698354616567162661395526975254448758091053074808436661809101512025437321837959528689272191238705432334775200965152419124620293521962173467865862080429867958898040527206234108561471429991355210673373595922083144022410446012714221026174220695995286555692560595981,26101397013404440939950108603288565551073409553356897393691328641679505760230621741096317929709636865532238670826796537369580597665138924272200816037026280780915781305836081579178356868109017075793286763556497902869947712856535743263321959264839901002581734771178344662509473227839268090064000382806059250315977679226653239225555007655990623485545590336008766750972486014525144801720879444739045959169483687885427725508164188831961197284042818573448808100923870021600896976125650269597381009562192855793477760166114366163011349461311146903814241124631772470784181050979028948750586113514587005436500903242591757553293,22437602225740742482465534898349205983133213895660550238212001804732032977697798637757435728694311659299624886491819969612531644822478331097020027346346025174540910579800256280214031292073085792970245723432769912206355626120327772649905875827091190500315669126429992547075064736037570537735332469814000462556933603719315364923773085086614780916637137068518726889173784282955430621992569759561719528189938429235007732504425905045067985337249988673084527372002559031400047880307427208848753891291386460253720313523072063965808016289774609282102972264056704286287440985034888143293816594327214769326166521224390393446693],"H1j":[16370062914568124684409954423220013634799944354368183091925443712820668316759795091290952642141219645055533606292548565759917746455430426634828957426644826424037530474618159463204943752577732484149675671820306363344833458247384057865310742915406677379586789735200748327711872632191061145184949312294612467345847214916930759229195852858849386686352293049987465485866498220082468131280135383612600619493426252446949294373638968518891137429993551161437309269629260378927918725566711632082553316166822070110359114229533322390061282040482480263995079579444943917107997110057038662405191417861817663789094790962966996587522,5792666313208572350705907594949414590804636531753541567087068453778543363077542142305947911768781865374122070750607847515026168979710170113788718287465368491981654823945993941924700096393523941715256095048825025361038086570514643251828085846380954791657627403414038681940866434304045104130214177360598208974353162505514170835103706979081795485247158115653501838694614859268884296606546104394637012764653804556264770973741677326601115655746125293204398034469241183574629519235451142797709676366285591723984602961129858687877266469708766607187000988412118886394000517917001485137799190522482532376333362935442751367745,14510201356793997359892744405553071944121896518459738320470368478827891282273167297002903311912769777071155241288755372185351193850631471716718530488323104261827697027757019895835360274243188719367049075501436153398857359555924247334095665350350441220453460409146684994664351725204034521761578947269005519140498383255606322844603919000682223940913285551513356600061526959181206093504072618536296265435830192715190515397064435874311583709516596584871136822289753837472532490128304199643440789002058080030111113389709287097531544417461853059085059819958060220257218705882557929843952675556987949500595639655528439052202,21994027187251658420706956116678134303619268245311594874227984400819404446053485122189884678892175444688722527594580466254690437593853064923544979570444911946308283663229116693350631331935027065689358169246815279257122823014594309629197723508317910829246255814111959552337648906237682616732913305786178221005434606679461852547394872592127050442856550471832240167936976142756988960345619830477159914332536955389792251800932867389016006568741180137556936582683389834385412181167798283357296952856933963222988284608097870458140102834156304710781157917296313315513842893014212063887070100364867105131178923785373561146050,9913834538682656788610829579771569556624609911472542281771864528920206652057360227595914694025069327892774241543292898072673087864732558768588752951687639831868499912733997907550450742144719953844448973554109420086839278177283587750852958353526057789017170152122423018814264172807655239353760715885145548388992476483731471865364270428702324445078126354834888878640191523880163270112743069852403951565444480363239177556818094412397417215136415082364220806171351930690164376890892251369372868624028034980680685551131786332553623705883769998271596791035214982761974622986462384695349153129828098712177799482890430520965,15464554656029222110560140639422624868539470020281691165975400448606613120973644407534365935510334228227263162749065335291017684520353168923100727746351715681760916446206803485743114757577242723665933043744987644589191843035807511863595701170012104449542518101585729174897996392297770818633483533801844500665798250501473521227123975005972911918718226524366806206633841675388137041998857549215313632375036761617534744890091542919972307048750757690677067439820416806817051344016166652866968067639055986253789416713411110543055264622333767216550525033482750914452894139691102713436731472281130988207399023815239852528906,12865788614422531768878171769038267076266208200249164027644212721909963715015912538682157638127903293282023380796412378159235431043017021949518573892381565899437599164703723050587964116914107635838030249942901605297513982608974593500166572552953195544515492725593747884602852061628830280449190167844572097543184555448060083835007200101317266753106995526429573085540857281097156159258319440414895242242967023265742835942344738184941128584859242462621792495405423196954908356769683815889035326257091875874458718611430785903143039161526479973858541524126951528796262613552089943663340076548393182371918642954593889432834,22194516202811321146792934079465991238594712937226367504517257988113211333368349800836879103947252405610400726941861867633710543721876626238467090611506859331575128297406631557631820626534381998686705168632059305910804423292984195597625141279765512951234238593649775486094326905655122386938572411401132183960062730500896105597665702000968846572795357957098192758080717128908256523579293163137417423771381528097786100281383788052729825837521137512379280310081930804124457815661946839040621474089357381345723789618079958299474682840114875558952249988571746058484000722421698440994062460208554903525444210802321182968014,2022329329707369117437055740094404969047484980501833952214571687130852032499620508208708908589247080600189902502365407836277381678968110704345539053376355432754797822267575827372488857681103447936055038802753292113151984972961755143427625893918328299356797405969999266508287378495280713821635381697950988327467894890827305051792226857027384943282520470216088404776455333696749084292781033264737672933515625823807581567568754027253581653106384383593181057349330506068884659072076739226363616897242406137010778123983315619151551375977509919335513557274798510437948502408760645678633359245877721858614575061700591393721,21638702445456858422878500352234793329413106731788942261751796025224145517964611169394617788434763506002565806620170893339110273126875286455095506459298086020278318872581385674653253080383128797980439557511752718258375238388481802546638936192461482797150514683008473213407715728694302414916863995043974867827876036585791719812271742103323384468954527534596036617313432433874380308883492321501736879178345427074046787174556058119038049586737477628511165980047288251497278209275581664775606335268904384984155864116270266473616061700061527150495070719210903471680082400487754898061609554671248760480063619759950744280907,20932768206097680299943959313782719928339866139959731166252002876096405653871733170637914957728294590217455322823662941811142831487382716004980657707514358763150029924714520812685697751484102120909926147024006189544048800446501267477163792293393919588659127430522309503845365000611784195390022621092266420671288509706282186373855655358090019051530324622779193478505342408854462043136412488215465955955421082850282626458587043647758494935495915329050933653468179762936320308005669155322055934931071589853638981754901315764484414249149121368560265856082417024956730272011998498550756243974623835494966366962683389714964,1365816667585940330490355905311774458514715320376130020996515573937571923987574784307504874484515899610747050162880466334946062918938639620242137371098595406424267003818882220942016240927776918797542668204898851284066695289242978919397682088055368818116198595348273129318762376760634794532531433638073562846988038755248023571028829475051882101071203979111269507596248527906600986677728810751499828436067766182628039345309355341295172437424660504415028913205507139100147921515616240146193076677157859750716375066201587358526136840334151066553547201088947345861316322897488659331106732575557394540428972305438213375814,5703448175361065536885380258834894924349694750000788978424055908887487214267289314410654116737467233333514153490994654420800717947051017245903088635547080581089891657444714373263301759995815635072257679749046151543038146531810310826817366207696928190231298874979984114964348460891792295427444943206125809938612729939665048974349693961742238426880015130297226114935093282566300228257419316454068258492582819117310017835605391570376283517758701794125467889060184214275911038527696714000045849219024045243597506828846590195831908281658454892131533791810760325400211405258812142759529523572815227489710851557846638137542,6412242406353564485058502679404605624009190790593030266854505291800626778702270387175472290319448965303250433574173375628339895100997329474893279692868549940279796264731093585208695625011062617868491258157215447275957107991387222489580499373804335870682739788296835432969262878909434810429803264643527538555130662379672012787064972208117475596665593916782896686056579449802576468324812730306559649834202797329883549294599723290402017221639617907711497472325019619452322282704828796586508386419927496666562295856731151167316262475184222145101211618002798513055006067228431048839763646095282531119806559583105533794495,12506213831497706601305625665856619892819919408470741644330076368184175310515183251146177621238406207206410185643656979107225155831507800032694528257147716038515158570256044209419514879851010106278924359714862316802415670557334433034976750101928783991744583819411313589306343712690219032368416678985323530251239318661396466801994308940886752046080901718450406046375904389766893043894196541576969928137946704159382893563356338387889137855413730990126192021766856444171515497507122402917749807424621383187173538906785892654668489198127757882153223185090960714890345630801099413698632285321494907662894187137142803150791,4340320683992731212484211057800765907410470847269768304639037529290512671362801376775768288042129836088810539204858832843247178308000345604701431226310915807542068901686097542648829915466491213307097734259829414895234796525272600474326857346693882386640793824277606043756669695477090601330450743232413209505539149906338741119182508496705355703793044044384724643256986023764031438551900073624644692938223394706241422593949897781383635695299729171084301185179708550600098470031089086344919627503113655735768701217637285566867914251954499504690075652022468818725559007318841314414541437592229352428286215595483845053638,11992304082547451264970842283976418853821301172975086658682116387543359417074268643442593212371361490968819128789238354995117145993279593426471336648259583293294202599078859260437992548184464009386152763827946804967424362206055435693041324410893236957405711025923054702040161696386453571055246924713260145964584750230359074777621444549946362450468684233332414284037283955916761049858000878784786268023500095161975906495439332741618288811384519280375489794382891880648564800750663555801045203854227681083222146920912455217541211811955477767635787030014152643158711960638325867606918508708678622347924499914937535267162,14695333877946105505101457937623624377562698430478247685331048607650568913937201633971254630714736577175024535322415669442798271475956496536083972430246897654017678266490639701809689918981250971730052435032797344400248226649579239038593902835536123498617918666329121083751772876090103853533035181736615043011673643017303605152279678650202512062770466963460251942403425462061196179491356440328364636048438335959347603428717042954470887883300891927932651483741068303515425618933688194621659816079976510221005329843899476003615861655015952079393164902282608831513778303062716347528913475870793908798463564832083549613643,6361624891550612817090909815430156259585522002511378700573226127309539860650523892977168943678195716824260472829831132024282728135758912178943090813161584286046605117495775878170654691942858452263763077967647297167266507685944611403131069163214134338169098006751105941940463654618427873599267528041887836331948305951890335742121311832653316741398094161561749334956600724220433324620401615490879450816097431926849306846384679126203940987154375373597650036103822699248044107851648286585837187416880739896147553285981829664828869063480707437325000260106329487862878699057790666160151383639198420965781777521408308842299,14948927140088320458060089936345715166494298631495857212773926944790409869483957673185876995292328343640197788589621807184518806705821872810447516194927678801617268846361533345460325613772855110322242304569109406957894646727384216069315325052819333705539766154972989576988248927288284161530384846682668538198851543196833452065614949748530253693700328342501577900059842225778082026779632761099626760985225309957646536118173500439351182747667021029407125807666947346322131872894915154624415940708414296769044070685030466034270063053482191494419465005898644603408406165778424189251953592599788015054586521957253320449350],"H2j":[9653640790649475435050720061635061544335995170813227062007808546473167610366804040613054457009646767723479128021709179513573358845884462519136809844401815066012655857973373223748942767836422506840658738556503260986697250346171921063441485400421533124068250604530993514803166454504801884882297625678932746326066096923436475087338628767636689481829832307623108408425959669915171224014581673426602770656342925462023157550194457295116217893440581116140543598050947318929500123378985275492765280831578803707538206440354119287576298034238031692982504012470196898579719660373199491817717767711160029710911173725338539566802,3578111860663702772408903345930659472256129868015762875031051677614699117364424442270785915866444756532836287879751640816575659073006676007210405202315496945346450727441553016187592354415793891110773645408147683476571812485850037389853330648238106038729525075512542830213816094853869971661719959033499816133612736102442725651388405183329714325258711655979055386253406319598230253658818466953001815116530962213661362799968355793928849708876651937113231862631691372187008559216884922263381652908899796744393080985272287681952842592674663712445064149288160957033524932550150413325097150870149209345404214256294282382085,2562656890570835296352376205216590519360952576353253013086344012422175466058176642832419040937235521572328705583208834436813588375562745525224328564354560731400723267162764903064018742843839822445601315505274421672289602485557719646504320106522113645676636456687468751723898215955665240524139836668877382766583475339565598073690853848639545227831264115164596396262772422415214665834769274554577301336288865874066248890243346947740610544045667761548206600923673948174739356732295677551749947395385332556227074205668024351973201205328576603362256016900712683688241615565934460363012498930253514800348031700419220337084,22298685304249156715841839507145325522077048988910268345524279200863227356693376151033928569980263444962701165900514081299580440300365488019578288962534096517468902687907593109404000193096117803450936780948162440311950526862133749440555125530434273281017640257175046682563772712146188162909037424635371282116160809281350332585723737917537784267577381007869736550494661878733387948458251550312048040279754696568539248453484809390032249968377837207868808482658171733689439009562188880777607125039187467565549644537971596666666932158369857160883674108786200103009448463903055431989786220430290067137368612432640074310237,5879475324785385886080118453628099122983640585548725925692818787221734315336181255707999432375105366554548265736590343628955580077952532008988837072008731794155978542038914506112861039350525606157951017828660604272526605818549217659336563240062224484914310161520768881507503977620229908361541865095980430141394883457555144123820008061398004875781145432780438239985999952863196781468403423593755390719871396312035325131303835880979744451815683310530516197085535308856850866798018523735074120787646575912319226234213646284739550604897450763442470406797690674949855848424274918433854009972115369882751833585035329242761,18385446607341413929216752317617998458160849115285197433981133872531647462267817752048089105851349541660795002685652456000086108157981979426453705134803682299691630928200421847304354380350114763235863451959398215394354125874494984531309790405988904217354164073819568789120760731377280912128364362051769093741704293517942028826498663326655241508795914202031051398724638536523567800437872676476082333745719105291491676453403521845621182329449421075607837301738332926110019535833222421409565228043580701032497151738816862657210572819375918881851411438625526045192015060739626198734346744421593858157488507552447503219157,1543023308301318791291636723263661645234407352972693347930324541592073282303070472660827743672362126204249434834670307886593868303926045601951702434485524524299146190187978789568968092026789881246345813079894138764374868096047892517784410005345559357208978859029831295378789933334638460830863012154730679683049737545160281582305039520027158141403805442275432519516975114987511502563484403828987844187725357101956491714139410763551382100998178318863295224089354110436171289236674317711473441156004575613857935802947903186710273135122934512388821226072049093290647716152026391828419205457729234939199662889356527012444,19612969155814925927900736991694631498815639143900750081709470615537990112217002271570654324774711607889679093067885009086620212727925361021546388555967618760690930383917718167829905900473725102007606380323545403188303409627969907029774876076466652636827981089598601596821629485556381455948439528301393466043329774616323471054547330305463639720319551756652789237846520745512886328152641158526571443916940675394167134193466655448590323552123565655514390433855054114283235652222186673800138041449545987929749641868001910765212175435331820335256408276886037716378072029444719891008048297796893611911457701948988529229282,16728597479991680407332164223276251930971882378040601546182090035388885277790620642130984559023085396113670088325023048100279567479347085329073035696608554975777409036805727779421519384442869313567486101701856985975948368091166211269762554257345698853374624187196304439193724792774291722910128170261256918581442838390388813651239625403911503915460141004046718650178671549506593787333200145941149923809156438433492770338609398675185696331933468246886804722117355530728325631706711888199439210221397335620762682713255422110226515677047306270190770133307509623731091673964502293431264279055367772707113499782043802219072,6959317283624626561280838810011851848606573383456333866356771642710009365943896928686358713606049305764133589953562485262421030190625379899341516940088176438653144375343629199857524649360799157617467464667207079997090732685762910728717721600193091207478294785009859545546272657408615665578978698966309579302786158306046780048259033960048367018506262121833776982527433736628482989970739839626561164331780819203300647377931749431379962789021848504353274218995997754499900534324222498419599756583548358913120017762065234354717544865856293340540081744252368993926137398125931373959455585431506453093937785431907339954440,11707820384786665143909181917722140695066077204138675859555940823963085499198625584153264077484611920625749300043796981737297557284495008476240804003977980903028035986014301427047695461308987163082644181568819427026377861293089760745032220979974314071873695748444473344481739404234865330820136242966321355292830007655295383627072182012764804101331409332152687101319613845603099019594628684448783718018158413013589965095889558760502141979036830513073469713570347578185733951700672935586145889495063730457422516713768592535269075934288536062686021973569079600458124449475763651523966025703378628943004868525425132768470,12680113365919882057574106113475868522128522384382601197321116786250024227710942753687346378669117549887826210207932325610070970266526443555090342822407043741408930676918514338947859254583933603158241276952467805479024344654828575004834480980171788527657050724406198542408746742354531228386476751247072501617975174749412587537766151828306153888252035411082379552917399551115964687725743020641384211728557413837203373250893065347048255589312756928959773947595990023044227966600250595372063312552514516053386563033360883348059069724261103859193470298590631028566611086928803669676829225666250863192855787196720603673760,9019657743968669607069997647539968262488442864840563257526073127843215521457164945521996034009113740811008633126128201485876365964359243077677187550395794512954090076458031575481109943534530172796807658845833964496790520042423061347000207701119849250007073432625973802817311058171823571086584900654526615124913824393095137876668486739795620319593113487319306758076868523633806281732675535191877729151172494277333403640038019691517232275137009983348569240826245496914996509643617684093222096189728055561573909735610063401084000594789204303691795045753669664876756897469727730211469836756344045393712182476806348262481,509727692658127329234819348282810282823358222955712460979035976368760532139665502509369544837059902335508770138210475703837249689840377266421270410968940058538125244069674567645496962345390684467242600183265156396927471901904730403435725549974213712745153254130090979413745442250230122176329142735628394058559735078808655502950813887104168441824680204081093532561399756958380811786995754253778833219233414597390819387529718886819478101169481249247654168746478268826094117295037052091370216680279456693786586815595643437522530315484348520350527079378100131478937805285900851443697897872168020710497135465069780807687,3842294189873253197555038084451026657880884971357471477404186912118522652991181539287485996470843289095459960588932515934990566949413638625169611068786524327230092661471599333492933504858312443510340452825109814219748343465626968500133039743956522352452046474898271016421645025612565409422475581907506677274527441400119913285024497410632467771786023570373229380492185234340140113773065511943229164821322784643171443642045254567266530741214826934397811463635644370547054062567012016231228876473774669826378368361454200858389911185989849447377758286974943747417740672897265471383352127822433439855380640722238771424561,12605457156020973444763168611522695283402376793806466187139735133742095649198553225011255516233464381926302993187553632508703365300132776800901755737316341235931477791227746456204649162573568121476427289406145613748980339685673661511024577823438911510307584137593479079190723698666793670318162798116104492476114229973922338166221669934104784402698512349426984473431614385866651807327515058966935011035923319124790759086336194395000632944700277782112868323483780168144642250558671981757792078139349701070563555668082796938131863328410412160150471825619049694173807371104601644825755844313657731729068891163705563867555,18221138784555811053296911040444811422299569221370698341523745856400091281377839778678778328149110548534138934160836481393838346908432982920562116626677959686450236292050295531261923474882738697393510842972966810110218027601675376030586402861098487543863740705626110087204717386977952136809165092530095562928623301371629208844732733664526090007002304626939446606391205626126192870615394522174649688440887870385705569710809581575204639778805466412903927058799148697158251622260213645585723159916754663707237605872275846686566820885362722073881904277317597403167380835907876296870877478221646920284310430371934404822311,12694464409184116198175216134705674117698495589897734763290223249700439697747213221960704240817308024376618649511257185410755720163743943692791263666036558979570909072667619923266653682384882259644954119285287063471541002032435823410204495631358202104734018269537402171761572193134509812396214919229814690930600798504895496564687656801956575973479011431776352638782289114699743527186781919502658003154674450714069197242726393985114420810547684173494018605147976810102913734546162705259030658206284298418521349062777115509219489672039075093329236647292016824670535351144784388483525751068225542810044999850751665224074,4201765615355271720665237538919680402664127861292891404309962354268106831635826650331041297039291644925592311983403700464576600435518882156854904159089879201301912105368413055078865795374091914623189759593456721300785707753873135853357294442043908826331857106210726005526370024055346666586491341046296314798619327898858072624823009991437876242325624019938022318176060332738994176297193724805935694309014605422020909137014676945305249645201662101488974241605863532571828450201507584679493905057922784236072997143238879363168245889469038437561181276242698369654938178116001428367837409133015026021079614840533626761027,5693818583095067032554302348404689889827513405370432124730856324552577938645345928545249455102636900381970277642590696482249653647276002965730520652542065397111012479589269283364878130676178205766673654461574816233876555267291293343730094421360715866449358521574582941335437947403997555554148186986038285554629922609604751054748762347310142603219823359220130919495866316927224981350998367935679597793982889611172206443879512553133682522147111994374985808397513270886689704297115982752710085691562031953231724109895260045500479387280386873351701423764105530811712645875225583048344423503433093456461313617037044573606],"BigXj":[{"Coords":[31961961449149592290215619337342545369164998201385135329342844666166714363705,64636392625998908156106021830673034903148364934246785109426074897879798496695]},{"Coords":[13561027879868215202586968035768135752207534764402067848160241312364043370282,31683215740694624076579960720726613640416539517460242899883851320256877874663]},{"Coords":[102970472861055393328233354777448191839076263179087526130927097177204776801806,19849778771794568183958877322544789075545226949228544528619329359950140265115]},{"Coords":[8366486354279759555693815735694831293559828965602250556327317858912116678471,24456250444071880675953816335612932507033433175255559522554349078047625549678]},{"Coords":[93126246885046599201299142306317944158536766260090154798797491446571717586613,101632074177392193573512178573083324222329391048269493231849116848088552218375]},{"Coords":[45944473181199785374833853975473363930687909609574532965286298616052742734642,49106561873713078177518155217967815241790729328033604070651886838013799968339]},{"Coords":[88807289702586806295763026580879412609419986472794654189482668002118698433065,66889255218792877467551818840857264643456782872798377645941824720058728156412]},{"Coords":[45745777770010867130655637386117976632006388263133845103488205463444756286557,58413618959379828248439575493421719547880693819703454359788283537541749522854]},{"Coords":[14931705718614911512649079486924798218629483414127465950786381421646404878840,70853895869521315016717813866703398949051565204254795550601147911581008651495]},{"Coords":[31702825468512650039750289022997764002837389172468049717092331147393818254752,90704921170203464181329063311130512192295590723462840980995045506481351030148]},{"Coords":[108133277897421036808605843118854356978565880360693563552498521263092161957794,33994893650793696043114830343063091347849012751372498052809673503667071259863]},{"Coords":[13603746174106309213882605187834221055267478293724779491981408043396477605150,47502402322605913877968636451206238145707201411072573659819652572960084227380]},{"Coords":[21962637032374642863765173367353663611071785709723940819398260699915154728736,65876190623954751874122457014542214494068664571689464338691288646258987627994]},{"Coords":[8139291295258406047002639746372064115101651961499427493344848502049438028449,13643120656693319356484507306610353728697986968072320539867387334577150577786]},{"Coords":[871083651129542234211830236854985246175496411885064575219875767816674532739,100904963893789549224657775356884044157291453214379932308347421012612568685620]},{"Coords":[98028745019433069815621229762947408124245116227553507407780733119772046992520,60367568163137055112812282822118701471566204774343904929920219271364583776122]},{"Coords":[37332951852807254347441974643993866127041633128152922228434313154811023954744,56046459898819968566785812285970001512876757161864884424831574905585289505077]},{"Coords":[11223798616675111197150792218010453124916879614948521844981845491687409376646,70914747125199464172751182264377339815163078089055967502760766110580370145293]},{"Coords":[62949410140974969962342726366577125978516456835571210444108422984760191628326,55668150354406094271153240357261264601037343235231498038021007487545647055721]},{"Coords":[7611358883569187056502001665501128526153865541559158134839099203014115911991,87617845479447207941483995353359860120852817257735643485765526341493112597509]}],"PaillierPKs":[{"N":25922769748919102678415192880711636156565612427571550685296776086119205445525743826557545692077634738129321690187868055737306626420419536394422682260657759329710259802294458956279773225258250955469954464209933873407784778802101265717840506851919529598154066919091078766953942869622551929743069097967501533345363150709912011028449270819442207860620552088412428865900112120786495620291333470644949767300948329241775121748888220588626655915013364614554467190860190736954650967874940702908395331234632114014125372505065096924932509595285205788545338407476139436404463823043865599023326570565049384032977060875483209339089},{"N":23930233287283899271771864413305422456138957780711273892670074191715648409585503033095084345383391541524625291548041741990557564183855401706042293717552023237439032182637019639795919249455653535670614575331737610284863144094845900714497635996654401300216924764570210541950557336240993007183309433063094227377624710274228010652758134777897718742178998545079447283838099902510469006366469099975469096355736757507201973304413688395278990349533350163833514531655073848517781662614171483003731680841330633223244205178982328422170273570503713081265847261211618499950287557687314846590616484106774575999250148317390509484773},{"N":23804125140052077689856128298352557083678652474445385365228110453726681237860799979845611556170894187976654278582576364089033396218674226546868809651353049956675922595541689542576794678062495339422204984765419389268325283682512000995221750412104207394441438666051694475950049774094896290106430636216894744335784327798634247450687264677393229214665686649911456587168142148024558282134024448427550922487022680890892554782651383972136386958126051377715096556862662265886688077689941967157694195467190297477735450118736949849327358586935699405848605265912107169200547464609552395233560924746135866463084686118233592906569},{"N":27732731445242071631661957657712700411367090291795241371771965432140171981887215839890743735562516245338158767440902124645306227526755834590210240211292920385793070069156192085968959067158127765511651425539136016999745924428061397793021945121990437538890398656832618417715425504589084090095239114803460787199036351739230987513003864153861252195944069425337294669643857426654756086277471320443733998616523518289821541295617435513033264977202437153989318832642208143170451837926277566396048774049270318848738844338850668187024045715008196311523744942555689097435377598835544336914580911633671909176827168167136470690349},{"N":24540078122494262833119917930091872139739129939617606686122284549157786865278292966087938309454800165081094474899057524752572006230843959997841521536274236615511587750039832014979332539924539915807860222967109230298738770371871063759834296194059907031260324597353713442284471130560805946122495294807423458083635025189319558646442212459161798625793784738344309603016513355951936699928410805609866016648244631951643648288242475041729105749202516848107495430809184564037582943457286768883109270231510808158554549441157152513493684930416951758705877335895250913277012541968048511163986915876606316087458297080987346429881},{"N":23068407873896187320610408658036992760323120237076281539139801143529656493030091268390954927616119732305210576479622679524747880246080257702939099128994719527894439722828526117361648236913823027514544862046712398251734066527697676237348724465158893599560473200351530224245041596340220963683429881340553208409699594299261181212989221107530971303522686320513564226387471374456547377291192484997988606654540899634665450162274963086331783789860908282085692296248300574631527561763641974772756130570734735297575564567681595756096492735284720794891113064512997620639494646662790341453069978107064092657029168133504185408209},{"N":23360724885676198523522179321150194474267520026708517257764444663025119039638464657158724624502663558960702469988070676415660798425916276572290617437202837750858738892140118363926690520956187802097449221385283612203760207950600195667994976400493623569930090999021596112553157677485561299069991215207522767873493631366488446241092099654975621689119086509041077742510323711222260189730828492291459421830791540197321337933505867430138627984859014648102694909985043765241359798051875756951108870386862501048751981261038842763679815348130953290890391440850806363449637432840586263665690832227799688631446932015796916844537},{"N":25572476038149983843824758627743773292157542015669155545898739136432359227667585235619146413408812705275735125477228881724887114180658812229689479785083051083069428146070988730518675361280497876215801249358736365876007532614766347833762716625529381645528767502376159614744663698030295284120589012492759402983796882103200388651743368106596836536656368370930363045639317610411594882976032564820311800297421945366798108347221120736308176815503106682839506833524058020959093518528060465861144447540812579976237229589574562145541453749754749768478003306870660214131556451734687719631047077200787163529663274266186702479657},{"N":22679491499676926565249058751269701914370165376325885490706178594236435587374452393672919867257890172146499232592163563478749644823548404207107209183759523050603597049541204457028947474998785130219644182203008088877544305999771879137962239304258371157231174473491797491114277983084811723764080082851754276992307408859865524067180300336894890064430698022388669278921501809909740064260359142339540812296913591956784925745003590749703099702370645409020780887758983568638652737043891478141095930983089074418014910987946825193073588506986312390146214478478314600989393866198945700334073322066709926152728868061176019551541},{"N":23556951187256713732039305973238937631620385080790804249029259279472926645248156172448686117325741554381537031072742207487366612992119859269685828207319515666102872111546619607137952974660084980511684952594879342586512197525409799350424247192892012163769784591542546626323584978204193899561072157767856334488337110957680579926475975853118319141371431419486620931003438350760541975587261961199260033262263106014958269750801811225868080849204705441859105664948039653986722714354940941410686784948916936213417318953574086609821961649007609305029496977916873440356977063491030736996785241653241262171162950673703965399497},{"N":25874692591276389940909836821933328634340387691760211719857424847912710687202655208899136151842265948895002254373718724704209721944297143062448179072459504026936041473424765480639475272190837266572978737262449980766383982513621598580661341958135147571122513631091491976191663115339463730624237942100977649124658328431032849468551008597071378488661492324861414296280692846039598797857140808360770338990664282941023358641770157837364612463858095463039043959476170224596463891235213200808423306885708639894810932553685021558027739945539621344374072593175483199343233185955959027063970833388545231587659014590298587532269},{"N":21093015027631740022404443614096248522776233243516651444497036871175728958780883068858760981924585432192986275662870128643941927265524238598903061299795143929360395711020210769824764384718922898979318706735662563638859312024117764087176816929100038836825165997745175858151391747552772916358596447916581236137266690055236206686429983418915105841208302705945838725058954761546083763560226985859597874827308926656876419352353487645531847757035757295720869824004015071252605178819856102760159009139713396577974830023684477215548955933062314225333947463154019890073099705030557644025494887348484646782031863159015194484417},{"N":25298229297396047246415163429032546137139715727559844391184017906947304850232141234045323209407471473714145852636924268416866274482603754141415609592221706725085407059971638122009913495964543366119323417218834638913881087432600102264473788528537095668778412431377856067113698729914757144153775835786313302871273438949909936263664301138604696985912220658568672102041006541952444982579070062275651333990266954050520365848194152044834016212084441028573044037025009772616765171118784908205140185837844772749992941537017860827787097838183799078426827486346760690086948873222139803967157701952297751113063507286886770253809},{"N":27142202438632787162126599492908508783692765215748557510315014134009044742375492012422395905792294364201376442258017321008269356413320158807932162865700040957744157446176162447390298999320446062496836729102114052332958615915307193716216287036998207324413342337908047902088094382893405585342830460716335897834006040665407645344104524772021574862180664953364488173834491400964015536206179143781066229852877159880337660767454184922616386524557470530917791514588890903382115919687896218697262329973216887300329083882938499296413225108475327673886217363092593458630101782913564451822536507792690041998191978031482893873661},{"N":24506900410165079432913879286738242981557799447704277709132563752281068885918764244597103897934251933625444124974453530023693766922128717584028552755128051187819589410024704161034785358235535327695240184593017832269373629062497324651346586921679971074785452914954524453931920025017233873766495332551435302696547239605953737313669053194482788679487077465271167890491044626060923037626210805459313170671202877996680415217025953459280403666974895608025476083146334864242075064839862857242870450430867849337473211116054259839281123892458791925377357496234454799948092884977174468592367921171996109259120511593665944142269},{"N":26694966767987840469949338865344547117483340362831650227215482575365406012636774021468648984974992022743149425563486792907591668251920735101399223711217247824036472514130615393737405150133409306326610912172081216216331513707092964488994949651842782342704418212963772590286378010081225253538245220740244206602153540135126863052186543426616293649543741875882042173380956119737322204906042367710990417544800462728321639324791151406955584010061660628304199783826293959912579926890912970052339895938137461119473504729752401310289221600181057106776643382986556174592325963163204522372078262520351770361427042538592078722253},{"N":28161406783438289776782541515550232234219338732182263528677255680862818571394539837092411279908340595856411618560352096707955778113841586575489526111758509944691006867155143609674220650793817498419172979829028602046249597147507621299153669762040424244341554256616377217119563525915851719009321686306763607672801085326365691030132510560260181669852932393003570340516931927914922146799899039434467722922041925474101320996856938035131446584298134298675299397155375412990353784006913691603024110559796744887732721945933471868150638226543773483734660294313186275340618342717882057017678734282256333631978096376709630195493},{"N":30290385531723706663194155723402482345164001328034021287910161482488063429892351584916277391109894294446801833020074687889362652138426091460224301803948089690115686705682426193759251182110547546779254274419781083851169949275087832187538168815749507922889270386625094587688358817642053715412200458038741309360104964334706289126542952674791148655002683650712544232003067953586569445443104249283623297733191839471659254940888571771772980381177972566220724293577306168494057111878161156955456998298372496716136324267059071403030493623531599851487444134766104137251811774500492630476212318493040236485031236879687941684761},{"N":21891762840438596060416034930044842446937758373617708235288562429502315391645647044939378215035677465574183685957522821315454029977571728750605988329881847569313802549118091978526315133726370633285214423147938264418314863217805659876561184725718735591303337902948467582966199323804114988231963307083517180657041313131586070203747291724798899561367507615511932716092324516747320587928666160741969956121773346301706809405054989477031949248189136343469258532041255092588255241987397760849320759799542054627513230744643622791455964220513319415609245199516100422991698341556744298439022451385568791478794837569530013904689},{"N":25360934335416714794999313991057897528923718232366653339706494176825638906694689891746545886915964196582662458688535283322287088397853865709093712398485753916163063777301385991907720781358632265326870516346689492128442283774600103789825609570294923480202759046857115137927714980847316960609776972337028789163184648676367675625026306027140091761009104192786329465543720196130052658782412428125321357130192023653185727111578488774341366834046035305712205910649341950409228079277410881842097288924692206421126356254520404943323384573694119449632324221088061482676921038116252201661916622983158849603411299895152156469481}],"ECDSAPub":{"Coords":[92492306118178589821640584737240636977398594678247616965910942704932180187323,27954057508764275913470910100133573369328128015811591924683199269013496685879]}} \ No newline at end of file diff --git a/test/_ecdsa_fixtures/keygen_data_13.json b/test/_ecdsa_fixtures/keygen_data_13.json new file mode 100644 index 00000000..aacc18a2 --- /dev/null +++ b/test/_ecdsa_fixtures/keygen_data_13.json @@ -0,0 +1 @@ +{"PaillierSK":{"N":27142202438632787162126599492908508783692765215748557510315014134009044742375492012422395905792294364201376442258017321008269356413320158807932162865700040957744157446176162447390298999320446062496836729102114052332958615915307193716216287036998207324413342337908047902088094382893405585342830460716335897834006040665407645344104524772021574862180664953364488173834491400964015536206179143781066229852877159880337660767454184922616386524557470530917791514588890903382115919687896218697262329973216887300329083882938499296413225108475327673886217363092593458630101782913564451822536507792690041998191978031482893873661,"LambdaN":13571101219316393581063299746454254391846382607874278755157507067004522371187746006211197952896147182100688221129008660504134678206660079403966081432850020478872078723088081223695149499660223031248418364551057026166479307957653596858108143518499103662206671168954023951044047191446702792671415230358167948916837711268075399053418040154829891214592552482885426306147784257234812670913343010080956986015284574250103949739312308203104041491807999523209740028700196831425887086905374613986057808037393077464321231155847945427967888532892807462968077262055976032314700802512107916338082446812567874049405612592804337006462,"PhiN":27142202438632787162126599492908508783692765215748557510315014134009044742375492012422395905792294364201376442258017321008269356413320158807932162865700040957744157446176162447390298999320446062496836729102114052332958615915307193716216287036998207324413342337908047902088094382893405585342830460716335897833675422536150798106836080309659782429185104965770852612295568514469625341826686020161913972030569148500207899478624616406208082983615999046419480057400393662851774173810749227972115616074786154928642462311695890855935777065785614925936154524111952064629401605024215832676164893625135748098811225185608674012924},"NTildei":27392140202372139560911530190722295626016991167776777076251374167016701252229100335980281077736021393527993281083564981442696373714433732500818431355034758384480955155409564373832745499649881975977124862697809360957420580753883129965594447943274206109113518479198329538838000642865155652137973709624008263285324174285285129803357738290385065522262059795474318914719823768887144641758090777562619592046692917101170170722723905514971631800061092086777420826999668590868568525034863406950714560799453233548147404988580929389926995856613912328981176466707497680180241272497358147647189027922268738449537259460751070153621,"H1i":6412242406353564485058502679404605624009190790593030266854505291800626778702270387175472290319448965303250433574173375628339895100997329474893279692868549940279796264731093585208695625011062617868491258157215447275957107991387222489580499373804335870682739788296835432969262878909434810429803264643527538555130662379672012787064972208117475596665593916782896686056579449802576468324812730306559649834202797329883549294599723290402017221639617907711497472325019619452322282704828796586508386419927496666562295856731151167316262475184222145101211618002798513055006067228431048839763646095282531119806559583105533794495,"H2i":509727692658127329234819348282810282823358222955712460979035976368760532139665502509369544837059902335508770138210475703837249689840377266421270410968940058538125244069674567645496962345390684467242600183265156396927471901904730403435725549974213712745153254130090979413745442250230122176329142735628394058559735078808655502950813887104168441824680204081093532561399756958380811786995754253778833219233414597390819387529718886819478101169481249247654168746478268826094117295037052091370216680279456693786586815595643437522530315484348520350527079378100131478937805285900851443697897872168020710497135465069780807687,"Alpha":20623704766878122337549007574908090088690796615889949450705841268663171711097312565174398770505203248025026977276335309665015720639235703441275952467455766517692617308081829097800698675051522381711572029274302741637483073280130802773420001374626178642984195132958144725140910950079169212216091746923707621973039781859327148198118700478560299411644530914773213693444305785482088269512946803092614958209239401164203334728489935413949155720869394777918340330538096788082961781569183323103824018628603865974398525353826007343679941330737025154856165843997482552258490422646753286256746834333785399847650909908666810949513,"Beta":2134438644469295824023682300371082913938294077901293508338627609104542199043804994160824731329846339134097803622375661080060513585927556847874002589903510525409599636634800005276716106788143807934181942901372095744370506968849866207024684468862669886900409322684859243657041093786703911389553257415617138088528360801815368494147340023428918896787940104079769091345127621422199790413675540449321224966551818980957591788741707745513983816458179559105461626376316735442238898874272884779136871401688685817539439220607389800148141968029429865431783570210684593414957734884702257151394521913144505009385547867626485341410,"P":84434062632249294866734127047501674467460960025048034848722769415334290495803905529887430668283924565274108296030958074723716196932312813896152481940807646783104585034717436098857469895620897116476778269498701747487363611879379401812359899149307546301442230716012471742728381716929375375626022251884697815199,"Q":81105123182565561609142942463971374111421431815164342763025058855414230533849902869970658572183514263008560797169745491591820281032685399517330323151334322395143398991637422537102347994291725039438558158768007590121731955245313796180992192578388209147751434009364595965945480269472574389432282352757292403989,"Xi":53517375537227730227711555866101191647372612878766179831710016528404264411014,"ShareID":99910913777216787121500121711080713911605201308487494263101624819470958719087,"Ks":[99910913777216787121500121711080713911605201308487494263101624819470958719074,99910913777216787121500121711080713911605201308487494263101624819470958719075,99910913777216787121500121711080713911605201308487494263101624819470958719076,99910913777216787121500121711080713911605201308487494263101624819470958719077,99910913777216787121500121711080713911605201308487494263101624819470958719078,99910913777216787121500121711080713911605201308487494263101624819470958719079,99910913777216787121500121711080713911605201308487494263101624819470958719080,99910913777216787121500121711080713911605201308487494263101624819470958719081,99910913777216787121500121711080713911605201308487494263101624819470958719082,99910913777216787121500121711080713911605201308487494263101624819470958719083,99910913777216787121500121711080713911605201308487494263101624819470958719084,99910913777216787121500121711080713911605201308487494263101624819470958719085,99910913777216787121500121711080713911605201308487494263101624819470958719086,99910913777216787121500121711080713911605201308487494263101624819470958719087,99910913777216787121500121711080713911605201308487494263101624819470958719088,99910913777216787121500121711080713911605201308487494263101624819470958719089,99910913777216787121500121711080713911605201308487494263101624819470958719090,99910913777216787121500121711080713911605201308487494263101624819470958719091,99910913777216787121500121711080713911605201308487494263101624819470958719092,99910913777216787121500121711080713911605201308487494263101624819470958719093],"NTildej":[20539613942852364097890357541124859329931817468396278432713468646303963073659662742703665137736867247354367523800071318544570641421320510992705137876681425752810096966415479528824625129989063402576946505816887222102561441464103605308386975248012283762854115939987945603503283072741824666735245204091384515192454349252950007899626081034649919068642018312817079235168086885705851677572363277983076857313399016624874649811334825694862350059490166759704819411086564625186038339099281295128259092469609539775245598320922394808913338827772001777479207381548603315272620456484970681705115865233047669675602308688791376160589,19461028678249357721701139019984545699598216253588699892259672060166427273458875608319855785678884811755179389274380053495578644060470229307987007292965327985966772681212738091909180148035785695413643708212165777295662698493311553457174395686873169155288384255670661532430410131045712913078128214239252258473814281283319061613409102410606683119900924722782015902970301519339718368508022893331969649513655635811522767629123667744907556474126774472529158147258343482417188228144974952598132795041139358631852141986745214674779692377899411672630850213748161088638857089501019216868292821676374914063004957409393293909513,23815206664659393600414832732918591362081086959256855451108811883313935088830793690110550688160373127903180149093000695761674277348327575728255258492470452704258920461298225437641154249481888087192237143947805411796310656512191138629555279666557122333244803756577286887501632314162770617970064401783626962319950524158923845138939649762251756759762119774585338772559055859463599094869423262313306255644927649977403492926253217608523813644206820059309357940964633363130901166057002430269910921882664166860038861390305316020579398429144038386189480114288127704265879389663380565983482028227028306457603727009698486364281,24531363009049563762536664273685630249930678743601473345646756718446749360580428942513295608401046098557387011967587876621178423418085640157221932880387840241062539585907115950101921176093340357598786734576629107604766098059509560466283874031181440387973563913507733219768477775440248994272649062713092103053254889978195382189063452107439308150731662099755008823588080977928436274879799764825887538020606485093127463680041134931480024720440536560752357773730443722294290727915022250638670491342013254556128005158924861347226548459626859027825687870031912255326425000561908947972742109607669897905187712585858898757609,25485947141960036800495601740358196336268148055632283852581334267632567089581351729697672659186150817483946028874699734841543360085445274610946793774678284845142698994270979141586640525566502581978495871744643885460820923876472270768798335817566781711314773489485670479771252073613546268231833675772584402239718946768734191504723089294480532048176604551680713541748910822012363078082926628834536634899606309021451196325472880525430322895659546741570135136047631868000597393506058143850364801619503318165686086392731222189995494225633540472226098357551602534472541794408218767265775850366289511546336446350346021282237,28927199961592509462716713052933904239681693743133323458100757563361525410670677174848159248824087482997906403441479071298957717300803186875289912194352025314864665854179681659546207985006650252942140268140510157106320849846175665072784539119695315757729095462689260495430463870222739869312073694346079553731438032339737072477343055235278557275309616493517920166164080693605271556685355062728635594753076381152709174590915306592547837200121302421882042327338955791916538647734045471143845013412592155994390976714634271247514800401724247381959070976404354024140134277339724455784411154537706347451440209596089260579033,23535119694477523772171748044630208131923028017288499693412795663706886468394056769073862998142660508474676105711590469240299300182072142961838102383606369450702330959729879893242049940029310408964084662077585876233411878169942718467081776763994846585950049650660912827541883992039288017630464390592382481783566823924532043610685633953209522603678841504652207254189077646669746333277037092923165111872444873598439940966325805716105630151638779643981500665152639984434504817034412086671254173379166038071662889121653550757613052820175939040916661555723756176613161036717523938816196299007092417098079561970714605061629,25950783447263038071689830748627856944354421735888733670277679971199180982562433131778324823115329151828330351648021612294094370722267669972986008148650808031918722892417970047773133521052009921040352676366121022268583455702531977371124075420219730460605780729481918672698487964603151661149289116143779941433746038933525309985350586367303720987487112290090195247099032317451409521767630753382551078895196505751734814139673689437231496521554705226938471456297964527299627857211400740652357956604961830754401147898467475649318148547949522809325493238323065337997986089837089904293908389128632840557033917922339991780941,18687318215344566555182740902454336428592486945614858718824661784376438207943593936740995084200358460316665071770681463630810552799361606949595415859491617650913620153502889285378972038135570359724693463761135116433672709408902151793979112715679738392883186006369274528906256519536716049908878346476950103274343269649895419042195937774381514132210454482820166758270346958078142742840173830940449171621914508101385104081796180941351697633772994457709351610367195330318869580666697900958479010130985251846923421963647318437209519428820003347978947799013079168765159404172743072632243706939700207639779907975142224264481,23171083837957860801722218699383337900446240030786871268841926233540016534306722256418697981846104677203759841627977766724259030420015851980511088229043403050763668171722648141766116654882525867416891436685059276174192868946692072206824573955678962077288068058032958478942750338128252470165933443869447212456023356245726416751721989152798706366691818486325734110680894776063318626260722657549472271184224308146689662638536101291469177898475337027531732897213355102104990685266062044811809193138366772764276162181116512200063463469172637189164324496242489479899844513951546392297220122152709400797483802836017803985829,31343857270714098359641269819793471247744609345771779520849062499842222751853736635128030263011267623933026775894009843057499037409921342064326054830123558338476304900840753732976691522721379417037190976719048367738172877422341695489954487825668390415147795382659776979019893183466662138357984500601883268994989224933833342232607751640920642550766835871191739404896219865225614116435580799461951708239551693029017567595268404121330207564314786956323833427106966279493560190075571199071036639702485305576334075428484139050116713328535867597124971991546934922511844853709001583656359284723717084806850145785405536911177,21157487427733991932564510362138492162446873104287756897983482468142107066461483198236006898398559574298806811271053872211924774119515269456039458266616445024300383802406544466004007569246261860103312006457776588799344222340569710165666518367783547810282003032927364478322210948885423703591814633243286070072754280297773344097615910071723846039979528910869815670975142743376293197136856592859188733532786144697373533341877747464753616005694543102759948736736802569257325101204596297349394258616025918915521692968786299735438817719576226325356937526633071323693338940757362235570825853130085312301448111119042363796113,20871071186633559430638470998115518791893553646420368867902204568431630269565952322291766136370093127894084798814242475456617969102595313205728405129168253735048454253508700456761223106599134617920774227174015124829476988377890165462875183814841087993485125686632410376362585538078467534668954228084080919739417042353928509644795709201564083148094079836306167650314513450129297783489119015593642581024870311297891618816623633162063381775243950740681581620150958717466968747843706102214690157071025611480716612116918336154774385432247274600064909320680551901771492165221773721500541614228617829117370166464409020423677,27392140202372139560911530190722295626016991167776777076251374167016701252229100335980281077736021393527993281083564981442696373714433732500818431355034758384480955155409564373832745499649881975977124862697809360957420580753883129965594447943274206109113518479198329538838000642865155652137973709624008263285324174285285129803357738290385065522262059795474318914719823768887144641758090777562619592046692917101170170722723905514971631800061092086777420826999668590868568525034863406950714560799453233548147404988580929389926995856613912328981176466707497680180241272497358147647189027922268738449537259460751070153621,27430458285560064975603737623690566617914765114564307656159371148918349993794669623672608540855772729568670170546349850367039352526804750358257162362490778729908291097260480430890476823722553654389178498566668573496227008913481934125881578164602723285712928871252207939941804689355173665470036039114037118963971589320342018774107583274314158608546842149328506685304690959566263296291871998398637364399822435359987280203416832697098234360106966146607816540746285266790106830402077656904149244001383199485864465648143588026246539864484902228828598281873311925831114015086450712030764672165915248196209070047454495085169,20958576649034914977467969756965874238364659071947031154211972997487243461262394795340258789930977809611131615831278870909123144191655991893039673506539165135637011485008482874021240555941833074286915507794874804218274011487390148860550531668300157069443584231888571925159473970195937554740938933226402208131160317818926784959057391389980505131685522579677264162724011263439981256344785140426649255485125637348357522582511064347878764724812085894898146080695383734063354384186594813474135513405234523117338489484424618032520881618202129068318264606277435174234229102947510033247339629069254901430086639327996737230861,25673210614761004254141737312053451635018146154378993341101985326929566270344015265597835170941666913606119762699769929117810862190840467973932188558749547474174367822508601158829928161219529997833862214002106486508027112865708012732033692783629855485545330232068552007350877531730729790772847199443436084419382562932662568511421420283558235026303217907581598166628555941188586096538364407553738314729036218493332920854764055946289816665260688813327844579390598566768671973314358968068459214729157676432241630688442073088681756498136814491310636028421098965714509622937097403466307515165856202257786336739101389349089,27062431131775909264962122516003720577621307700606752850978674545503762322327045712593154396229756047740198870458644425173406714147601486563284216353367017457813364860861671576291918230182938220436949095109018225648486931358793025228571750572403143070647269508389021099989559676856968002395615757641794675119572488971947338527037552287756390904188517823120698354616567162661395526975254448758091053074808436661809101512025437321837959528689272191238705432334775200965152419124620293521962173467865862080429867958898040527206234108561471429991355210673373595922083144022410446012714221026174220695995286555692560595981,26101397013404440939950108603288565551073409553356897393691328641679505760230621741096317929709636865532238670826796537369580597665138924272200816037026280780915781305836081579178356868109017075793286763556497902869947712856535743263321959264839901002581734771178344662509473227839268090064000382806059250315977679226653239225555007655990623485545590336008766750972486014525144801720879444739045959169483687885427725508164188831961197284042818573448808100923870021600896976125650269597381009562192855793477760166114366163011349461311146903814241124631772470784181050979028948750586113514587005436500903242591757553293,22437602225740742482465534898349205983133213895660550238212001804732032977697798637757435728694311659299624886491819969612531644822478331097020027346346025174540910579800256280214031292073085792970245723432769912206355626120327772649905875827091190500315669126429992547075064736037570537735332469814000462556933603719315364923773085086614780916637137068518726889173784282955430621992569759561719528189938429235007732504425905045067985337249988673084527372002559031400047880307427208848753891291386460253720313523072063965808016289774609282102972264056704286287440985034888143293816594327214769326166521224390393446693],"H1j":[16370062914568124684409954423220013634799944354368183091925443712820668316759795091290952642141219645055533606292548565759917746455430426634828957426644826424037530474618159463204943752577732484149675671820306363344833458247384057865310742915406677379586789735200748327711872632191061145184949312294612467345847214916930759229195852858849386686352293049987465485866498220082468131280135383612600619493426252446949294373638968518891137429993551161437309269629260378927918725566711632082553316166822070110359114229533322390061282040482480263995079579444943917107997110057038662405191417861817663789094790962966996587522,5792666313208572350705907594949414590804636531753541567087068453778543363077542142305947911768781865374122070750607847515026168979710170113788718287465368491981654823945993941924700096393523941715256095048825025361038086570514643251828085846380954791657627403414038681940866434304045104130214177360598208974353162505514170835103706979081795485247158115653501838694614859268884296606546104394637012764653804556264770973741677326601115655746125293204398034469241183574629519235451142797709676366285591723984602961129858687877266469708766607187000988412118886394000517917001485137799190522482532376333362935442751367745,14510201356793997359892744405553071944121896518459738320470368478827891282273167297002903311912769777071155241288755372185351193850631471716718530488323104261827697027757019895835360274243188719367049075501436153398857359555924247334095665350350441220453460409146684994664351725204034521761578947269005519140498383255606322844603919000682223940913285551513356600061526959181206093504072618536296265435830192715190515397064435874311583709516596584871136822289753837472532490128304199643440789002058080030111113389709287097531544417461853059085059819958060220257218705882557929843952675556987949500595639655528439052202,21994027187251658420706956116678134303619268245311594874227984400819404446053485122189884678892175444688722527594580466254690437593853064923544979570444911946308283663229116693350631331935027065689358169246815279257122823014594309629197723508317910829246255814111959552337648906237682616732913305786178221005434606679461852547394872592127050442856550471832240167936976142756988960345619830477159914332536955389792251800932867389016006568741180137556936582683389834385412181167798283357296952856933963222988284608097870458140102834156304710781157917296313315513842893014212063887070100364867105131178923785373561146050,9913834538682656788610829579771569556624609911472542281771864528920206652057360227595914694025069327892774241543292898072673087864732558768588752951687639831868499912733997907550450742144719953844448973554109420086839278177283587750852958353526057789017170152122423018814264172807655239353760715885145548388992476483731471865364270428702324445078126354834888878640191523880163270112743069852403951565444480363239177556818094412397417215136415082364220806171351930690164376890892251369372868624028034980680685551131786332553623705883769998271596791035214982761974622986462384695349153129828098712177799482890430520965,15464554656029222110560140639422624868539470020281691165975400448606613120973644407534365935510334228227263162749065335291017684520353168923100727746351715681760916446206803485743114757577242723665933043744987644589191843035807511863595701170012104449542518101585729174897996392297770818633483533801844500665798250501473521227123975005972911918718226524366806206633841675388137041998857549215313632375036761617534744890091542919972307048750757690677067439820416806817051344016166652866968067639055986253789416713411110543055264622333767216550525033482750914452894139691102713436731472281130988207399023815239852528906,12865788614422531768878171769038267076266208200249164027644212721909963715015912538682157638127903293282023380796412378159235431043017021949518573892381565899437599164703723050587964116914107635838030249942901605297513982608974593500166572552953195544515492725593747884602852061628830280449190167844572097543184555448060083835007200101317266753106995526429573085540857281097156159258319440414895242242967023265742835942344738184941128584859242462621792495405423196954908356769683815889035326257091875874458718611430785903143039161526479973858541524126951528796262613552089943663340076548393182371918642954593889432834,22194516202811321146792934079465991238594712937226367504517257988113211333368349800836879103947252405610400726941861867633710543721876626238467090611506859331575128297406631557631820626534381998686705168632059305910804423292984195597625141279765512951234238593649775486094326905655122386938572411401132183960062730500896105597665702000968846572795357957098192758080717128908256523579293163137417423771381528097786100281383788052729825837521137512379280310081930804124457815661946839040621474089357381345723789618079958299474682840114875558952249988571746058484000722421698440994062460208554903525444210802321182968014,2022329329707369117437055740094404969047484980501833952214571687130852032499620508208708908589247080600189902502365407836277381678968110704345539053376355432754797822267575827372488857681103447936055038802753292113151984972961755143427625893918328299356797405969999266508287378495280713821635381697950988327467894890827305051792226857027384943282520470216088404776455333696749084292781033264737672933515625823807581567568754027253581653106384383593181057349330506068884659072076739226363616897242406137010778123983315619151551375977509919335513557274798510437948502408760645678633359245877721858614575061700591393721,21638702445456858422878500352234793329413106731788942261751796025224145517964611169394617788434763506002565806620170893339110273126875286455095506459298086020278318872581385674653253080383128797980439557511752718258375238388481802546638936192461482797150514683008473213407715728694302414916863995043974867827876036585791719812271742103323384468954527534596036617313432433874380308883492321501736879178345427074046787174556058119038049586737477628511165980047288251497278209275581664775606335268904384984155864116270266473616061700061527150495070719210903471680082400487754898061609554671248760480063619759950744280907,20932768206097680299943959313782719928339866139959731166252002876096405653871733170637914957728294590217455322823662941811142831487382716004980657707514358763150029924714520812685697751484102120909926147024006189544048800446501267477163792293393919588659127430522309503845365000611784195390022621092266420671288509706282186373855655358090019051530324622779193478505342408854462043136412488215465955955421082850282626458587043647758494935495915329050933653468179762936320308005669155322055934931071589853638981754901315764484414249149121368560265856082417024956730272011998498550756243974623835494966366962683389714964,1365816667585940330490355905311774458514715320376130020996515573937571923987574784307504874484515899610747050162880466334946062918938639620242137371098595406424267003818882220942016240927776918797542668204898851284066695289242978919397682088055368818116198595348273129318762376760634794532531433638073562846988038755248023571028829475051882101071203979111269507596248527906600986677728810751499828436067766182628039345309355341295172437424660504415028913205507139100147921515616240146193076677157859750716375066201587358526136840334151066553547201088947345861316322897488659331106732575557394540428972305438213375814,5703448175361065536885380258834894924349694750000788978424055908887487214267289314410654116737467233333514153490994654420800717947051017245903088635547080581089891657444714373263301759995815635072257679749046151543038146531810310826817366207696928190231298874979984114964348460891792295427444943206125809938612729939665048974349693961742238426880015130297226114935093282566300228257419316454068258492582819117310017835605391570376283517758701794125467889060184214275911038527696714000045849219024045243597506828846590195831908281658454892131533791810760325400211405258812142759529523572815227489710851557846638137542,6412242406353564485058502679404605624009190790593030266854505291800626778702270387175472290319448965303250433574173375628339895100997329474893279692868549940279796264731093585208695625011062617868491258157215447275957107991387222489580499373804335870682739788296835432969262878909434810429803264643527538555130662379672012787064972208117475596665593916782896686056579449802576468324812730306559649834202797329883549294599723290402017221639617907711497472325019619452322282704828796586508386419927496666562295856731151167316262475184222145101211618002798513055006067228431048839763646095282531119806559583105533794495,12506213831497706601305625665856619892819919408470741644330076368184175310515183251146177621238406207206410185643656979107225155831507800032694528257147716038515158570256044209419514879851010106278924359714862316802415670557334433034976750101928783991744583819411313589306343712690219032368416678985323530251239318661396466801994308940886752046080901718450406046375904389766893043894196541576969928137946704159382893563356338387889137855413730990126192021766856444171515497507122402917749807424621383187173538906785892654668489198127757882153223185090960714890345630801099413698632285321494907662894187137142803150791,4340320683992731212484211057800765907410470847269768304639037529290512671362801376775768288042129836088810539204858832843247178308000345604701431226310915807542068901686097542648829915466491213307097734259829414895234796525272600474326857346693882386640793824277606043756669695477090601330450743232413209505539149906338741119182508496705355703793044044384724643256986023764031438551900073624644692938223394706241422593949897781383635695299729171084301185179708550600098470031089086344919627503113655735768701217637285566867914251954499504690075652022468818725559007318841314414541437592229352428286215595483845053638,11992304082547451264970842283976418853821301172975086658682116387543359417074268643442593212371361490968819128789238354995117145993279593426471336648259583293294202599078859260437992548184464009386152763827946804967424362206055435693041324410893236957405711025923054702040161696386453571055246924713260145964584750230359074777621444549946362450468684233332414284037283955916761049858000878784786268023500095161975906495439332741618288811384519280375489794382891880648564800750663555801045203854227681083222146920912455217541211811955477767635787030014152643158711960638325867606918508708678622347924499914937535267162,14695333877946105505101457937623624377562698430478247685331048607650568913937201633971254630714736577175024535322415669442798271475956496536083972430246897654017678266490639701809689918981250971730052435032797344400248226649579239038593902835536123498617918666329121083751772876090103853533035181736615043011673643017303605152279678650202512062770466963460251942403425462061196179491356440328364636048438335959347603428717042954470887883300891927932651483741068303515425618933688194621659816079976510221005329843899476003615861655015952079393164902282608831513778303062716347528913475870793908798463564832083549613643,6361624891550612817090909815430156259585522002511378700573226127309539860650523892977168943678195716824260472829831132024282728135758912178943090813161584286046605117495775878170654691942858452263763077967647297167266507685944611403131069163214134338169098006751105941940463654618427873599267528041887836331948305951890335742121311832653316741398094161561749334956600724220433324620401615490879450816097431926849306846384679126203940987154375373597650036103822699248044107851648286585837187416880739896147553285981829664828869063480707437325000260106329487862878699057790666160151383639198420965781777521408308842299,14948927140088320458060089936345715166494298631495857212773926944790409869483957673185876995292328343640197788589621807184518806705821872810447516194927678801617268846361533345460325613772855110322242304569109406957894646727384216069315325052819333705539766154972989576988248927288284161530384846682668538198851543196833452065614949748530253693700328342501577900059842225778082026779632761099626760985225309957646536118173500439351182747667021029407125807666947346322131872894915154624415940708414296769044070685030466034270063053482191494419465005898644603408406165778424189251953592599788015054586521957253320449350],"H2j":[9653640790649475435050720061635061544335995170813227062007808546473167610366804040613054457009646767723479128021709179513573358845884462519136809844401815066012655857973373223748942767836422506840658738556503260986697250346171921063441485400421533124068250604530993514803166454504801884882297625678932746326066096923436475087338628767636689481829832307623108408425959669915171224014581673426602770656342925462023157550194457295116217893440581116140543598050947318929500123378985275492765280831578803707538206440354119287576298034238031692982504012470196898579719660373199491817717767711160029710911173725338539566802,3578111860663702772408903345930659472256129868015762875031051677614699117364424442270785915866444756532836287879751640816575659073006676007210405202315496945346450727441553016187592354415793891110773645408147683476571812485850037389853330648238106038729525075512542830213816094853869971661719959033499816133612736102442725651388405183329714325258711655979055386253406319598230253658818466953001815116530962213661362799968355793928849708876651937113231862631691372187008559216884922263381652908899796744393080985272287681952842592674663712445064149288160957033524932550150413325097150870149209345404214256294282382085,2562656890570835296352376205216590519360952576353253013086344012422175466058176642832419040937235521572328705583208834436813588375562745525224328564354560731400723267162764903064018742843839822445601315505274421672289602485557719646504320106522113645676636456687468751723898215955665240524139836668877382766583475339565598073690853848639545227831264115164596396262772422415214665834769274554577301336288865874066248890243346947740610544045667761548206600923673948174739356732295677551749947395385332556227074205668024351973201205328576603362256016900712683688241615565934460363012498930253514800348031700419220337084,22298685304249156715841839507145325522077048988910268345524279200863227356693376151033928569980263444962701165900514081299580440300365488019578288962534096517468902687907593109404000193096117803450936780948162440311950526862133749440555125530434273281017640257175046682563772712146188162909037424635371282116160809281350332585723737917537784267577381007869736550494661878733387948458251550312048040279754696568539248453484809390032249968377837207868808482658171733689439009562188880777607125039187467565549644537971596666666932158369857160883674108786200103009448463903055431989786220430290067137368612432640074310237,5879475324785385886080118453628099122983640585548725925692818787221734315336181255707999432375105366554548265736590343628955580077952532008988837072008731794155978542038914506112861039350525606157951017828660604272526605818549217659336563240062224484914310161520768881507503977620229908361541865095980430141394883457555144123820008061398004875781145432780438239985999952863196781468403423593755390719871396312035325131303835880979744451815683310530516197085535308856850866798018523735074120787646575912319226234213646284739550604897450763442470406797690674949855848424274918433854009972115369882751833585035329242761,18385446607341413929216752317617998458160849115285197433981133872531647462267817752048089105851349541660795002685652456000086108157981979426453705134803682299691630928200421847304354380350114763235863451959398215394354125874494984531309790405988904217354164073819568789120760731377280912128364362051769093741704293517942028826498663326655241508795914202031051398724638536523567800437872676476082333745719105291491676453403521845621182329449421075607837301738332926110019535833222421409565228043580701032497151738816862657210572819375918881851411438625526045192015060739626198734346744421593858157488507552447503219157,1543023308301318791291636723263661645234407352972693347930324541592073282303070472660827743672362126204249434834670307886593868303926045601951702434485524524299146190187978789568968092026789881246345813079894138764374868096047892517784410005345559357208978859029831295378789933334638460830863012154730679683049737545160281582305039520027158141403805442275432519516975114987511502563484403828987844187725357101956491714139410763551382100998178318863295224089354110436171289236674317711473441156004575613857935802947903186710273135122934512388821226072049093290647716152026391828419205457729234939199662889356527012444,19612969155814925927900736991694631498815639143900750081709470615537990112217002271570654324774711607889679093067885009086620212727925361021546388555967618760690930383917718167829905900473725102007606380323545403188303409627969907029774876076466652636827981089598601596821629485556381455948439528301393466043329774616323471054547330305463639720319551756652789237846520745512886328152641158526571443916940675394167134193466655448590323552123565655514390433855054114283235652222186673800138041449545987929749641868001910765212175435331820335256408276886037716378072029444719891008048297796893611911457701948988529229282,16728597479991680407332164223276251930971882378040601546182090035388885277790620642130984559023085396113670088325023048100279567479347085329073035696608554975777409036805727779421519384442869313567486101701856985975948368091166211269762554257345698853374624187196304439193724792774291722910128170261256918581442838390388813651239625403911503915460141004046718650178671549506593787333200145941149923809156438433492770338609398675185696331933468246886804722117355530728325631706711888199439210221397335620762682713255422110226515677047306270190770133307509623731091673964502293431264279055367772707113499782043802219072,6959317283624626561280838810011851848606573383456333866356771642710009365943896928686358713606049305764133589953562485262421030190625379899341516940088176438653144375343629199857524649360799157617467464667207079997090732685762910728717721600193091207478294785009859545546272657408615665578978698966309579302786158306046780048259033960048367018506262121833776982527433736628482989970739839626561164331780819203300647377931749431379962789021848504353274218995997754499900534324222498419599756583548358913120017762065234354717544865856293340540081744252368993926137398125931373959455585431506453093937785431907339954440,11707820384786665143909181917722140695066077204138675859555940823963085499198625584153264077484611920625749300043796981737297557284495008476240804003977980903028035986014301427047695461308987163082644181568819427026377861293089760745032220979974314071873695748444473344481739404234865330820136242966321355292830007655295383627072182012764804101331409332152687101319613845603099019594628684448783718018158413013589965095889558760502141979036830513073469713570347578185733951700672935586145889495063730457422516713768592535269075934288536062686021973569079600458124449475763651523966025703378628943004868525425132768470,12680113365919882057574106113475868522128522384382601197321116786250024227710942753687346378669117549887826210207932325610070970266526443555090342822407043741408930676918514338947859254583933603158241276952467805479024344654828575004834480980171788527657050724406198542408746742354531228386476751247072501617975174749412587537766151828306153888252035411082379552917399551115964687725743020641384211728557413837203373250893065347048255589312756928959773947595990023044227966600250595372063312552514516053386563033360883348059069724261103859193470298590631028566611086928803669676829225666250863192855787196720603673760,9019657743968669607069997647539968262488442864840563257526073127843215521457164945521996034009113740811008633126128201485876365964359243077677187550395794512954090076458031575481109943534530172796807658845833964496790520042423061347000207701119849250007073432625973802817311058171823571086584900654526615124913824393095137876668486739795620319593113487319306758076868523633806281732675535191877729151172494277333403640038019691517232275137009983348569240826245496914996509643617684093222096189728055561573909735610063401084000594789204303691795045753669664876756897469727730211469836756344045393712182476806348262481,509727692658127329234819348282810282823358222955712460979035976368760532139665502509369544837059902335508770138210475703837249689840377266421270410968940058538125244069674567645496962345390684467242600183265156396927471901904730403435725549974213712745153254130090979413745442250230122176329142735628394058559735078808655502950813887104168441824680204081093532561399756958380811786995754253778833219233414597390819387529718886819478101169481249247654168746478268826094117295037052091370216680279456693786586815595643437522530315484348520350527079378100131478937805285900851443697897872168020710497135465069780807687,3842294189873253197555038084451026657880884971357471477404186912118522652991181539287485996470843289095459960588932515934990566949413638625169611068786524327230092661471599333492933504858312443510340452825109814219748343465626968500133039743956522352452046474898271016421645025612565409422475581907506677274527441400119913285024497410632467771786023570373229380492185234340140113773065511943229164821322784643171443642045254567266530741214826934397811463635644370547054062567012016231228876473774669826378368361454200858389911185989849447377758286974943747417740672897265471383352127822433439855380640722238771424561,12605457156020973444763168611522695283402376793806466187139735133742095649198553225011255516233464381926302993187553632508703365300132776800901755737316341235931477791227746456204649162573568121476427289406145613748980339685673661511024577823438911510307584137593479079190723698666793670318162798116104492476114229973922338166221669934104784402698512349426984473431614385866651807327515058966935011035923319124790759086336194395000632944700277782112868323483780168144642250558671981757792078139349701070563555668082796938131863328410412160150471825619049694173807371104601644825755844313657731729068891163705563867555,18221138784555811053296911040444811422299569221370698341523745856400091281377839778678778328149110548534138934160836481393838346908432982920562116626677959686450236292050295531261923474882738697393510842972966810110218027601675376030586402861098487543863740705626110087204717386977952136809165092530095562928623301371629208844732733664526090007002304626939446606391205626126192870615394522174649688440887870385705569710809581575204639778805466412903927058799148697158251622260213645585723159916754663707237605872275846686566820885362722073881904277317597403167380835907876296870877478221646920284310430371934404822311,12694464409184116198175216134705674117698495589897734763290223249700439697747213221960704240817308024376618649511257185410755720163743943692791263666036558979570909072667619923266653682384882259644954119285287063471541002032435823410204495631358202104734018269537402171761572193134509812396214919229814690930600798504895496564687656801956575973479011431776352638782289114699743527186781919502658003154674450714069197242726393985114420810547684173494018605147976810102913734546162705259030658206284298418521349062777115509219489672039075093329236647292016824670535351144784388483525751068225542810044999850751665224074,4201765615355271720665237538919680402664127861292891404309962354268106831635826650331041297039291644925592311983403700464576600435518882156854904159089879201301912105368413055078865795374091914623189759593456721300785707753873135853357294442043908826331857106210726005526370024055346666586491341046296314798619327898858072624823009991437876242325624019938022318176060332738994176297193724805935694309014605422020909137014676945305249645201662101488974241605863532571828450201507584679493905057922784236072997143238879363168245889469038437561181276242698369654938178116001428367837409133015026021079614840533626761027,5693818583095067032554302348404689889827513405370432124730856324552577938645345928545249455102636900381970277642590696482249653647276002965730520652542065397111012479589269283364878130676178205766673654461574816233876555267291293343730094421360715866449358521574582941335437947403997555554148186986038285554629922609604751054748762347310142603219823359220130919495866316927224981350998367935679597793982889611172206443879512553133682522147111994374985808397513270886689704297115982752710085691562031953231724109895260045500479387280386873351701423764105530811712645875225583048344423503433093456461313617037044573606],"BigXj":[{"Coords":[31961961449149592290215619337342545369164998201385135329342844666166714363705,64636392625998908156106021830673034903148364934246785109426074897879798496695]},{"Coords":[13561027879868215202586968035768135752207534764402067848160241312364043370282,31683215740694624076579960720726613640416539517460242899883851320256877874663]},{"Coords":[102970472861055393328233354777448191839076263179087526130927097177204776801806,19849778771794568183958877322544789075545226949228544528619329359950140265115]},{"Coords":[8366486354279759555693815735694831293559828965602250556327317858912116678471,24456250444071880675953816335612932507033433175255559522554349078047625549678]},{"Coords":[93126246885046599201299142306317944158536766260090154798797491446571717586613,101632074177392193573512178573083324222329391048269493231849116848088552218375]},{"Coords":[45944473181199785374833853975473363930687909609574532965286298616052742734642,49106561873713078177518155217967815241790729328033604070651886838013799968339]},{"Coords":[88807289702586806295763026580879412609419986472794654189482668002118698433065,66889255218792877467551818840857264643456782872798377645941824720058728156412]},{"Coords":[45745777770010867130655637386117976632006388263133845103488205463444756286557,58413618959379828248439575493421719547880693819703454359788283537541749522854]},{"Coords":[14931705718614911512649079486924798218629483414127465950786381421646404878840,70853895869521315016717813866703398949051565204254795550601147911581008651495]},{"Coords":[31702825468512650039750289022997764002837389172468049717092331147393818254752,90704921170203464181329063311130512192295590723462840980995045506481351030148]},{"Coords":[108133277897421036808605843118854356978565880360693563552498521263092161957794,33994893650793696043114830343063091347849012751372498052809673503667071259863]},{"Coords":[13603746174106309213882605187834221055267478293724779491981408043396477605150,47502402322605913877968636451206238145707201411072573659819652572960084227380]},{"Coords":[21962637032374642863765173367353663611071785709723940819398260699915154728736,65876190623954751874122457014542214494068664571689464338691288646258987627994]},{"Coords":[8139291295258406047002639746372064115101651961499427493344848502049438028449,13643120656693319356484507306610353728697986968072320539867387334577150577786]},{"Coords":[871083651129542234211830236854985246175496411885064575219875767816674532739,100904963893789549224657775356884044157291453214379932308347421012612568685620]},{"Coords":[98028745019433069815621229762947408124245116227553507407780733119772046992520,60367568163137055112812282822118701471566204774343904929920219271364583776122]},{"Coords":[37332951852807254347441974643993866127041633128152922228434313154811023954744,56046459898819968566785812285970001512876757161864884424831574905585289505077]},{"Coords":[11223798616675111197150792218010453124916879614948521844981845491687409376646,70914747125199464172751182264377339815163078089055967502760766110580370145293]},{"Coords":[62949410140974969962342726366577125978516456835571210444108422984760191628326,55668150354406094271153240357261264601037343235231498038021007487545647055721]},{"Coords":[7611358883569187056502001665501128526153865541559158134839099203014115911991,87617845479447207941483995353359860120852817257735643485765526341493112597509]}],"PaillierPKs":[{"N":25922769748919102678415192880711636156565612427571550685296776086119205445525743826557545692077634738129321690187868055737306626420419536394422682260657759329710259802294458956279773225258250955469954464209933873407784778802101265717840506851919529598154066919091078766953942869622551929743069097967501533345363150709912011028449270819442207860620552088412428865900112120786495620291333470644949767300948329241775121748888220588626655915013364614554467190860190736954650967874940702908395331234632114014125372505065096924932509595285205788545338407476139436404463823043865599023326570565049384032977060875483209339089},{"N":23930233287283899271771864413305422456138957780711273892670074191715648409585503033095084345383391541524625291548041741990557564183855401706042293717552023237439032182637019639795919249455653535670614575331737610284863144094845900714497635996654401300216924764570210541950557336240993007183309433063094227377624710274228010652758134777897718742178998545079447283838099902510469006366469099975469096355736757507201973304413688395278990349533350163833514531655073848517781662614171483003731680841330633223244205178982328422170273570503713081265847261211618499950287557687314846590616484106774575999250148317390509484773},{"N":23804125140052077689856128298352557083678652474445385365228110453726681237860799979845611556170894187976654278582576364089033396218674226546868809651353049956675922595541689542576794678062495339422204984765419389268325283682512000995221750412104207394441438666051694475950049774094896290106430636216894744335784327798634247450687264677393229214665686649911456587168142148024558282134024448427550922487022680890892554782651383972136386958126051377715096556862662265886688077689941967157694195467190297477735450118736949849327358586935699405848605265912107169200547464609552395233560924746135866463084686118233592906569},{"N":27732731445242071631661957657712700411367090291795241371771965432140171981887215839890743735562516245338158767440902124645306227526755834590210240211292920385793070069156192085968959067158127765511651425539136016999745924428061397793021945121990437538890398656832618417715425504589084090095239114803460787199036351739230987513003864153861252195944069425337294669643857426654756086277471320443733998616523518289821541295617435513033264977202437153989318832642208143170451837926277566396048774049270318848738844338850668187024045715008196311523744942555689097435377598835544336914580911633671909176827168167136470690349},{"N":24540078122494262833119917930091872139739129939617606686122284549157786865278292966087938309454800165081094474899057524752572006230843959997841521536274236615511587750039832014979332539924539915807860222967109230298738770371871063759834296194059907031260324597353713442284471130560805946122495294807423458083635025189319558646442212459161798625793784738344309603016513355951936699928410805609866016648244631951643648288242475041729105749202516848107495430809184564037582943457286768883109270231510808158554549441157152513493684930416951758705877335895250913277012541968048511163986915876606316087458297080987346429881},{"N":23068407873896187320610408658036992760323120237076281539139801143529656493030091268390954927616119732305210576479622679524747880246080257702939099128994719527894439722828526117361648236913823027514544862046712398251734066527697676237348724465158893599560473200351530224245041596340220963683429881340553208409699594299261181212989221107530971303522686320513564226387471374456547377291192484997988606654540899634665450162274963086331783789860908282085692296248300574631527561763641974772756130570734735297575564567681595756096492735284720794891113064512997620639494646662790341453069978107064092657029168133504185408209},{"N":23360724885676198523522179321150194474267520026708517257764444663025119039638464657158724624502663558960702469988070676415660798425916276572290617437202837750858738892140118363926690520956187802097449221385283612203760207950600195667994976400493623569930090999021596112553157677485561299069991215207522767873493631366488446241092099654975621689119086509041077742510323711222260189730828492291459421830791540197321337933505867430138627984859014648102694909985043765241359798051875756951108870386862501048751981261038842763679815348130953290890391440850806363449637432840586263665690832227799688631446932015796916844537},{"N":25572476038149983843824758627743773292157542015669155545898739136432359227667585235619146413408812705275735125477228881724887114180658812229689479785083051083069428146070988730518675361280497876215801249358736365876007532614766347833762716625529381645528767502376159614744663698030295284120589012492759402983796882103200388651743368106596836536656368370930363045639317610411594882976032564820311800297421945366798108347221120736308176815503106682839506833524058020959093518528060465861144447540812579976237229589574562145541453749754749768478003306870660214131556451734687719631047077200787163529663274266186702479657},{"N":22679491499676926565249058751269701914370165376325885490706178594236435587374452393672919867257890172146499232592163563478749644823548404207107209183759523050603597049541204457028947474998785130219644182203008088877544305999771879137962239304258371157231174473491797491114277983084811723764080082851754276992307408859865524067180300336894890064430698022388669278921501809909740064260359142339540812296913591956784925745003590749703099702370645409020780887758983568638652737043891478141095930983089074418014910987946825193073588506986312390146214478478314600989393866198945700334073322066709926152728868061176019551541},{"N":23556951187256713732039305973238937631620385080790804249029259279472926645248156172448686117325741554381537031072742207487366612992119859269685828207319515666102872111546619607137952974660084980511684952594879342586512197525409799350424247192892012163769784591542546626323584978204193899561072157767856334488337110957680579926475975853118319141371431419486620931003438350760541975587261961199260033262263106014958269750801811225868080849204705441859105664948039653986722714354940941410686784948916936213417318953574086609821961649007609305029496977916873440356977063491030736996785241653241262171162950673703965399497},{"N":25874692591276389940909836821933328634340387691760211719857424847912710687202655208899136151842265948895002254373718724704209721944297143062448179072459504026936041473424765480639475272190837266572978737262449980766383982513621598580661341958135147571122513631091491976191663115339463730624237942100977649124658328431032849468551008597071378488661492324861414296280692846039598797857140808360770338990664282941023358641770157837364612463858095463039043959476170224596463891235213200808423306885708639894810932553685021558027739945539621344374072593175483199343233185955959027063970833388545231587659014590298587532269},{"N":21093015027631740022404443614096248522776233243516651444497036871175728958780883068858760981924585432192986275662870128643941927265524238598903061299795143929360395711020210769824764384718922898979318706735662563638859312024117764087176816929100038836825165997745175858151391747552772916358596447916581236137266690055236206686429983418915105841208302705945838725058954761546083763560226985859597874827308926656876419352353487645531847757035757295720869824004015071252605178819856102760159009139713396577974830023684477215548955933062314225333947463154019890073099705030557644025494887348484646782031863159015194484417},{"N":25298229297396047246415163429032546137139715727559844391184017906947304850232141234045323209407471473714145852636924268416866274482603754141415609592221706725085407059971638122009913495964543366119323417218834638913881087432600102264473788528537095668778412431377856067113698729914757144153775835786313302871273438949909936263664301138604696985912220658568672102041006541952444982579070062275651333990266954050520365848194152044834016212084441028573044037025009772616765171118784908205140185837844772749992941537017860827787097838183799078426827486346760690086948873222139803967157701952297751113063507286886770253809},{"N":27142202438632787162126599492908508783692765215748557510315014134009044742375492012422395905792294364201376442258017321008269356413320158807932162865700040957744157446176162447390298999320446062496836729102114052332958615915307193716216287036998207324413342337908047902088094382893405585342830460716335897834006040665407645344104524772021574862180664953364488173834491400964015536206179143781066229852877159880337660767454184922616386524557470530917791514588890903382115919687896218697262329973216887300329083882938499296413225108475327673886217363092593458630101782913564451822536507792690041998191978031482893873661},{"N":24506900410165079432913879286738242981557799447704277709132563752281068885918764244597103897934251933625444124974453530023693766922128717584028552755128051187819589410024704161034785358235535327695240184593017832269373629062497324651346586921679971074785452914954524453931920025017233873766495332551435302696547239605953737313669053194482788679487077465271167890491044626060923037626210805459313170671202877996680415217025953459280403666974895608025476083146334864242075064839862857242870450430867849337473211116054259839281123892458791925377357496234454799948092884977174468592367921171996109259120511593665944142269},{"N":26694966767987840469949338865344547117483340362831650227215482575365406012636774021468648984974992022743149425563486792907591668251920735101399223711217247824036472514130615393737405150133409306326610912172081216216331513707092964488994949651842782342704418212963772590286378010081225253538245220740244206602153540135126863052186543426616293649543741875882042173380956119737322204906042367710990417544800462728321639324791151406955584010061660628304199783826293959912579926890912970052339895938137461119473504729752401310289221600181057106776643382986556174592325963163204522372078262520351770361427042538592078722253},{"N":28161406783438289776782541515550232234219338732182263528677255680862818571394539837092411279908340595856411618560352096707955778113841586575489526111758509944691006867155143609674220650793817498419172979829028602046249597147507621299153669762040424244341554256616377217119563525915851719009321686306763607672801085326365691030132510560260181669852932393003570340516931927914922146799899039434467722922041925474101320996856938035131446584298134298675299397155375412990353784006913691603024110559796744887732721945933471868150638226543773483734660294313186275340618342717882057017678734282256333631978096376709630195493},{"N":30290385531723706663194155723402482345164001328034021287910161482488063429892351584916277391109894294446801833020074687889362652138426091460224301803948089690115686705682426193759251182110547546779254274419781083851169949275087832187538168815749507922889270386625094587688358817642053715412200458038741309360104964334706289126542952674791148655002683650712544232003067953586569445443104249283623297733191839471659254940888571771772980381177972566220724293577306168494057111878161156955456998298372496716136324267059071403030493623531599851487444134766104137251811774500492630476212318493040236485031236879687941684761},{"N":21891762840438596060416034930044842446937758373617708235288562429502315391645647044939378215035677465574183685957522821315454029977571728750605988329881847569313802549118091978526315133726370633285214423147938264418314863217805659876561184725718735591303337902948467582966199323804114988231963307083517180657041313131586070203747291724798899561367507615511932716092324516747320587928666160741969956121773346301706809405054989477031949248189136343469258532041255092588255241987397760849320759799542054627513230744643622791455964220513319415609245199516100422991698341556744298439022451385568791478794837569530013904689},{"N":25360934335416714794999313991057897528923718232366653339706494176825638906694689891746545886915964196582662458688535283322287088397853865709093712398485753916163063777301385991907720781358632265326870516346689492128442283774600103789825609570294923480202759046857115137927714980847316960609776972337028789163184648676367675625026306027140091761009104192786329465543720196130052658782412428125321357130192023653185727111578488774341366834046035305712205910649341950409228079277410881842097288924692206421126356254520404943323384573694119449632324221088061482676921038116252201661916622983158849603411299895152156469481}],"ECDSAPub":{"Coords":[92492306118178589821640584737240636977398594678247616965910942704932180187323,27954057508764275913470910100133573369328128015811591924683199269013496685879]}} \ No newline at end of file diff --git a/test/_ecdsa_fixtures/keygen_data_14.json b/test/_ecdsa_fixtures/keygen_data_14.json new file mode 100644 index 00000000..20527681 --- /dev/null +++ b/test/_ecdsa_fixtures/keygen_data_14.json @@ -0,0 +1 @@ +{"PaillierSK":{"N":24506900410165079432913879286738242981557799447704277709132563752281068885918764244597103897934251933625444124974453530023693766922128717584028552755128051187819589410024704161034785358235535327695240184593017832269373629062497324651346586921679971074785452914954524453931920025017233873766495332551435302696547239605953737313669053194482788679487077465271167890491044626060923037626210805459313170671202877996680415217025953459280403666974895608025476083146334864242075064839862857242870450430867849337473211116054259839281123892458791925377357496234454799948092884977174468592367921171996109259120511593665944142269,"LambdaN":12253450205082539716456939643369121490778899723852138854566281876140534442959382122298551948967125966812722062487226765011846883461064358792014276377564025593909794705012352080517392679117767663847620092296508916134686814531248662325673293460839985537392726457477262226965960012508616936883247666275717651348116372663842872863071832157833017121406200602755596549883695545850585173588836706281696405599929322690930495753338108619016797459695078085093649077056581424010240839957311466361536916872369469960213820910516459546594419637157627541316838401120186633576676342910133635121764304703234642739813331891407564274622,"PhiN":24506900410165079432913879286738242981557799447704277709132563752281068885918764244597103897934251933625444124974453530023693766922128717584028552755128051187819589410024704161034785358235535327695240184593017832269373629062497324651346586921679971074785452914954524453931920025017233873766495332551435302696232745327685745726143664315666034242812401205511193099767391091701170347177673412563392811199858645381860991506676217238033594919390156170187298154113162848020481679914622932723073833744738939920427641821032919093188839274315255082633676802240373267153352685820267270243528609406469285479626663782815128549244},"NTildei":27430458285560064975603737623690566617914765114564307656159371148918349993794669623672608540855772729568670170546349850367039352526804750358257162362490778729908291097260480430890476823722553654389178498566668573496227008913481934125881578164602723285712928871252207939941804689355173665470036039114037118963971589320342018774107583274314158608546842149328506685304690959566263296291871998398637364399822435359987280203416832697098234360106966146607816540746285266790106830402077656904149244001383199485864465648143588026246539864484902228828598281873311925831114015086450712030764672165915248196209070047454495085169,"H1i":12506213831497706601305625665856619892819919408470741644330076368184175310515183251146177621238406207206410185643656979107225155831507800032694528257147716038515158570256044209419514879851010106278924359714862316802415670557334433034976750101928783991744583819411313589306343712690219032368416678985323530251239318661396466801994308940886752046080901718450406046375904389766893043894196541576969928137946704159382893563356338387889137855413730990126192021766856444171515497507122402917749807424621383187173538906785892654668489198127757882153223185090960714890345630801099413698632285321494907662894187137142803150791,"H2i":3842294189873253197555038084451026657880884971357471477404186912118522652991181539287485996470843289095459960588932515934990566949413638625169611068786524327230092661471599333492933504858312443510340452825109814219748343465626968500133039743956522352452046474898271016421645025612565409422475581907506677274527441400119913285024497410632467771786023570373229380492185234340140113773065511943229164821322784643171443642045254567266530741214826934397811463635644370547054062567012016231228876473774669826378368361454200858389911185989849447377758286974943747417740672897265471383352127822433439855380640722238771424561,"Alpha":23592449100932472913723742857452632270074531594269873475876154898487607002707603455504298722801842557097352502808278793443423870350856827240066919245273882363940309350232850332471995617344108979166853773685930462634214146253119633340947819898062529672245167160007268807138144539624180025351670801118198531075204255247126308345795449823534271262263486614207344172646432428907704236949823864748420366967169158874291878685404852674422091768851856991748813614092635463873330741080858300846337619241392230072459103124144808794746215977581754667719797852899975255315570203083936612691054442685481590296903588735876168214337,"Beta":2241260463476365839799568863666806611085184463149875551694969806791484248426385509615622877972270524882083779034880701964004245980843840913039001559808539054807539033805465324977629613640178362051877243479317231422411219692563527891036005110964929794350620568938051017549882939734747426110215780783480223307968812509738017942378325388449227137122385546108645155648901724542330171120635368566693290199736319993839533775178088480549463950008022592669071451322223420675273208102441434165424242724009171778973745680055455801448977048396262723203188999014970800174920188313009388787571643967281891946193327205659520514382,"P":76573618811417536581498533881386067081370381450988661304747025978923675694295668315347780852870082142254844336383743963518818028779549875555142979756125647789638962006183819544756411626025408413124762547524016076213547804003255419222199325882205261142348250025157127773558052680528691993151930812783976282683,"Q":89555837608755003647760630147777125411798552272806968602298714793561494014623739633416383797634098670165195686564612242910539060062849784326916854368948229131084118661050489924174972179572972370836221641544008587880717670092246987229172759902690548295573807879793881597002868986721060792913966296571951151403,"Xi":37752810869620181018808138792926654291600871231745367034846034481142697077018,"ShareID":99910913777216787121500121711080713911605201308487494263101624819470958719088,"Ks":[99910913777216787121500121711080713911605201308487494263101624819470958719074,99910913777216787121500121711080713911605201308487494263101624819470958719075,99910913777216787121500121711080713911605201308487494263101624819470958719076,99910913777216787121500121711080713911605201308487494263101624819470958719077,99910913777216787121500121711080713911605201308487494263101624819470958719078,99910913777216787121500121711080713911605201308487494263101624819470958719079,99910913777216787121500121711080713911605201308487494263101624819470958719080,99910913777216787121500121711080713911605201308487494263101624819470958719081,99910913777216787121500121711080713911605201308487494263101624819470958719082,99910913777216787121500121711080713911605201308487494263101624819470958719083,99910913777216787121500121711080713911605201308487494263101624819470958719084,99910913777216787121500121711080713911605201308487494263101624819470958719085,99910913777216787121500121711080713911605201308487494263101624819470958719086,99910913777216787121500121711080713911605201308487494263101624819470958719087,99910913777216787121500121711080713911605201308487494263101624819470958719088,99910913777216787121500121711080713911605201308487494263101624819470958719089,99910913777216787121500121711080713911605201308487494263101624819470958719090,99910913777216787121500121711080713911605201308487494263101624819470958719091,99910913777216787121500121711080713911605201308487494263101624819470958719092,99910913777216787121500121711080713911605201308487494263101624819470958719093],"NTildej":[20539613942852364097890357541124859329931817468396278432713468646303963073659662742703665137736867247354367523800071318544570641421320510992705137876681425752810096966415479528824625129989063402576946505816887222102561441464103605308386975248012283762854115939987945603503283072741824666735245204091384515192454349252950007899626081034649919068642018312817079235168086885705851677572363277983076857313399016624874649811334825694862350059490166759704819411086564625186038339099281295128259092469609539775245598320922394808913338827772001777479207381548603315272620456484970681705115865233047669675602308688791376160589,19461028678249357721701139019984545699598216253588699892259672060166427273458875608319855785678884811755179389274380053495578644060470229307987007292965327985966772681212738091909180148035785695413643708212165777295662698493311553457174395686873169155288384255670661532430410131045712913078128214239252258473814281283319061613409102410606683119900924722782015902970301519339718368508022893331969649513655635811522767629123667744907556474126774472529158147258343482417188228144974952598132795041139358631852141986745214674779692377899411672630850213748161088638857089501019216868292821676374914063004957409393293909513,23815206664659393600414832732918591362081086959256855451108811883313935088830793690110550688160373127903180149093000695761674277348327575728255258492470452704258920461298225437641154249481888087192237143947805411796310656512191138629555279666557122333244803756577286887501632314162770617970064401783626962319950524158923845138939649762251756759762119774585338772559055859463599094869423262313306255644927649977403492926253217608523813644206820059309357940964633363130901166057002430269910921882664166860038861390305316020579398429144038386189480114288127704265879389663380565983482028227028306457603727009698486364281,24531363009049563762536664273685630249930678743601473345646756718446749360580428942513295608401046098557387011967587876621178423418085640157221932880387840241062539585907115950101921176093340357598786734576629107604766098059509560466283874031181440387973563913507733219768477775440248994272649062713092103053254889978195382189063452107439308150731662099755008823588080977928436274879799764825887538020606485093127463680041134931480024720440536560752357773730443722294290727915022250638670491342013254556128005158924861347226548459626859027825687870031912255326425000561908947972742109607669897905187712585858898757609,25485947141960036800495601740358196336268148055632283852581334267632567089581351729697672659186150817483946028874699734841543360085445274610946793774678284845142698994270979141586640525566502581978495871744643885460820923876472270768798335817566781711314773489485670479771252073613546268231833675772584402239718946768734191504723089294480532048176604551680713541748910822012363078082926628834536634899606309021451196325472880525430322895659546741570135136047631868000597393506058143850364801619503318165686086392731222189995494225633540472226098357551602534472541794408218767265775850366289511546336446350346021282237,28927199961592509462716713052933904239681693743133323458100757563361525410670677174848159248824087482997906403441479071298957717300803186875289912194352025314864665854179681659546207985006650252942140268140510157106320849846175665072784539119695315757729095462689260495430463870222739869312073694346079553731438032339737072477343055235278557275309616493517920166164080693605271556685355062728635594753076381152709174590915306592547837200121302421882042327338955791916538647734045471143845013412592155994390976714634271247514800401724247381959070976404354024140134277339724455784411154537706347451440209596089260579033,23535119694477523772171748044630208131923028017288499693412795663706886468394056769073862998142660508474676105711590469240299300182072142961838102383606369450702330959729879893242049940029310408964084662077585876233411878169942718467081776763994846585950049650660912827541883992039288017630464390592382481783566823924532043610685633953209522603678841504652207254189077646669746333277037092923165111872444873598439940966325805716105630151638779643981500665152639984434504817034412086671254173379166038071662889121653550757613052820175939040916661555723756176613161036717523938816196299007092417098079561970714605061629,25950783447263038071689830748627856944354421735888733670277679971199180982562433131778324823115329151828330351648021612294094370722267669972986008148650808031918722892417970047773133521052009921040352676366121022268583455702531977371124075420219730460605780729481918672698487964603151661149289116143779941433746038933525309985350586367303720987487112290090195247099032317451409521767630753382551078895196505751734814139673689437231496521554705226938471456297964527299627857211400740652357956604961830754401147898467475649318148547949522809325493238323065337997986089837089904293908389128632840557033917922339991780941,18687318215344566555182740902454336428592486945614858718824661784376438207943593936740995084200358460316665071770681463630810552799361606949595415859491617650913620153502889285378972038135570359724693463761135116433672709408902151793979112715679738392883186006369274528906256519536716049908878346476950103274343269649895419042195937774381514132210454482820166758270346958078142742840173830940449171621914508101385104081796180941351697633772994457709351610367195330318869580666697900958479010130985251846923421963647318437209519428820003347978947799013079168765159404172743072632243706939700207639779907975142224264481,23171083837957860801722218699383337900446240030786871268841926233540016534306722256418697981846104677203759841627977766724259030420015851980511088229043403050763668171722648141766116654882525867416891436685059276174192868946692072206824573955678962077288068058032958478942750338128252470165933443869447212456023356245726416751721989152798706366691818486325734110680894776063318626260722657549472271184224308146689662638536101291469177898475337027531732897213355102104990685266062044811809193138366772764276162181116512200063463469172637189164324496242489479899844513951546392297220122152709400797483802836017803985829,31343857270714098359641269819793471247744609345771779520849062499842222751853736635128030263011267623933026775894009843057499037409921342064326054830123558338476304900840753732976691522721379417037190976719048367738172877422341695489954487825668390415147795382659776979019893183466662138357984500601883268994989224933833342232607751640920642550766835871191739404896219865225614116435580799461951708239551693029017567595268404121330207564314786956323833427106966279493560190075571199071036639702485305576334075428484139050116713328535867597124971991546934922511844853709001583656359284723717084806850145785405536911177,21157487427733991932564510362138492162446873104287756897983482468142107066461483198236006898398559574298806811271053872211924774119515269456039458266616445024300383802406544466004007569246261860103312006457776588799344222340569710165666518367783547810282003032927364478322210948885423703591814633243286070072754280297773344097615910071723846039979528910869815670975142743376293197136856592859188733532786144697373533341877747464753616005694543102759948736736802569257325101204596297349394258616025918915521692968786299735438817719576226325356937526633071323693338940757362235570825853130085312301448111119042363796113,20871071186633559430638470998115518791893553646420368867902204568431630269565952322291766136370093127894084798814242475456617969102595313205728405129168253735048454253508700456761223106599134617920774227174015124829476988377890165462875183814841087993485125686632410376362585538078467534668954228084080919739417042353928509644795709201564083148094079836306167650314513450129297783489119015593642581024870311297891618816623633162063381775243950740681581620150958717466968747843706102214690157071025611480716612116918336154774385432247274600064909320680551901771492165221773721500541614228617829117370166464409020423677,27392140202372139560911530190722295626016991167776777076251374167016701252229100335980281077736021393527993281083564981442696373714433732500818431355034758384480955155409564373832745499649881975977124862697809360957420580753883129965594447943274206109113518479198329538838000642865155652137973709624008263285324174285285129803357738290385065522262059795474318914719823768887144641758090777562619592046692917101170170722723905514971631800061092086777420826999668590868568525034863406950714560799453233548147404988580929389926995856613912328981176466707497680180241272497358147647189027922268738449537259460751070153621,27430458285560064975603737623690566617914765114564307656159371148918349993794669623672608540855772729568670170546349850367039352526804750358257162362490778729908291097260480430890476823722553654389178498566668573496227008913481934125881578164602723285712928871252207939941804689355173665470036039114037118963971589320342018774107583274314158608546842149328506685304690959566263296291871998398637364399822435359987280203416832697098234360106966146607816540746285266790106830402077656904149244001383199485864465648143588026246539864484902228828598281873311925831114015086450712030764672165915248196209070047454495085169,20958576649034914977467969756965874238364659071947031154211972997487243461262394795340258789930977809611131615831278870909123144191655991893039673506539165135637011485008482874021240555941833074286915507794874804218274011487390148860550531668300157069443584231888571925159473970195937554740938933226402208131160317818926784959057391389980505131685522579677264162724011263439981256344785140426649255485125637348357522582511064347878764724812085894898146080695383734063354384186594813474135513405234523117338489484424618032520881618202129068318264606277435174234229102947510033247339629069254901430086639327996737230861,25673210614761004254141737312053451635018146154378993341101985326929566270344015265597835170941666913606119762699769929117810862190840467973932188558749547474174367822508601158829928161219529997833862214002106486508027112865708012732033692783629855485545330232068552007350877531730729790772847199443436084419382562932662568511421420283558235026303217907581598166628555941188586096538364407553738314729036218493332920854764055946289816665260688813327844579390598566768671973314358968068459214729157676432241630688442073088681756498136814491310636028421098965714509622937097403466307515165856202257786336739101389349089,27062431131775909264962122516003720577621307700606752850978674545503762322327045712593154396229756047740198870458644425173406714147601486563284216353367017457813364860861671576291918230182938220436949095109018225648486931358793025228571750572403143070647269508389021099989559676856968002395615757641794675119572488971947338527037552287756390904188517823120698354616567162661395526975254448758091053074808436661809101512025437321837959528689272191238705432334775200965152419124620293521962173467865862080429867958898040527206234108561471429991355210673373595922083144022410446012714221026174220695995286555692560595981,26101397013404440939950108603288565551073409553356897393691328641679505760230621741096317929709636865532238670826796537369580597665138924272200816037026280780915781305836081579178356868109017075793286763556497902869947712856535743263321959264839901002581734771178344662509473227839268090064000382806059250315977679226653239225555007655990623485545590336008766750972486014525144801720879444739045959169483687885427725508164188831961197284042818573448808100923870021600896976125650269597381009562192855793477760166114366163011349461311146903814241124631772470784181050979028948750586113514587005436500903242591757553293,22437602225740742482465534898349205983133213895660550238212001804732032977697798637757435728694311659299624886491819969612531644822478331097020027346346025174540910579800256280214031292073085792970245723432769912206355626120327772649905875827091190500315669126429992547075064736037570537735332469814000462556933603719315364923773085086614780916637137068518726889173784282955430621992569759561719528189938429235007732504425905045067985337249988673084527372002559031400047880307427208848753891291386460253720313523072063965808016289774609282102972264056704286287440985034888143293816594327214769326166521224390393446693],"H1j":[16370062914568124684409954423220013634799944354368183091925443712820668316759795091290952642141219645055533606292548565759917746455430426634828957426644826424037530474618159463204943752577732484149675671820306363344833458247384057865310742915406677379586789735200748327711872632191061145184949312294612467345847214916930759229195852858849386686352293049987465485866498220082468131280135383612600619493426252446949294373638968518891137429993551161437309269629260378927918725566711632082553316166822070110359114229533322390061282040482480263995079579444943917107997110057038662405191417861817663789094790962966996587522,5792666313208572350705907594949414590804636531753541567087068453778543363077542142305947911768781865374122070750607847515026168979710170113788718287465368491981654823945993941924700096393523941715256095048825025361038086570514643251828085846380954791657627403414038681940866434304045104130214177360598208974353162505514170835103706979081795485247158115653501838694614859268884296606546104394637012764653804556264770973741677326601115655746125293204398034469241183574629519235451142797709676366285591723984602961129858687877266469708766607187000988412118886394000517917001485137799190522482532376333362935442751367745,14510201356793997359892744405553071944121896518459738320470368478827891282273167297002903311912769777071155241288755372185351193850631471716718530488323104261827697027757019895835360274243188719367049075501436153398857359555924247334095665350350441220453460409146684994664351725204034521761578947269005519140498383255606322844603919000682223940913285551513356600061526959181206093504072618536296265435830192715190515397064435874311583709516596584871136822289753837472532490128304199643440789002058080030111113389709287097531544417461853059085059819958060220257218705882557929843952675556987949500595639655528439052202,21994027187251658420706956116678134303619268245311594874227984400819404446053485122189884678892175444688722527594580466254690437593853064923544979570444911946308283663229116693350631331935027065689358169246815279257122823014594309629197723508317910829246255814111959552337648906237682616732913305786178221005434606679461852547394872592127050442856550471832240167936976142756988960345619830477159914332536955389792251800932867389016006568741180137556936582683389834385412181167798283357296952856933963222988284608097870458140102834156304710781157917296313315513842893014212063887070100364867105131178923785373561146050,9913834538682656788610829579771569556624609911472542281771864528920206652057360227595914694025069327892774241543292898072673087864732558768588752951687639831868499912733997907550450742144719953844448973554109420086839278177283587750852958353526057789017170152122423018814264172807655239353760715885145548388992476483731471865364270428702324445078126354834888878640191523880163270112743069852403951565444480363239177556818094412397417215136415082364220806171351930690164376890892251369372868624028034980680685551131786332553623705883769998271596791035214982761974622986462384695349153129828098712177799482890430520965,15464554656029222110560140639422624868539470020281691165975400448606613120973644407534365935510334228227263162749065335291017684520353168923100727746351715681760916446206803485743114757577242723665933043744987644589191843035807511863595701170012104449542518101585729174897996392297770818633483533801844500665798250501473521227123975005972911918718226524366806206633841675388137041998857549215313632375036761617534744890091542919972307048750757690677067439820416806817051344016166652866968067639055986253789416713411110543055264622333767216550525033482750914452894139691102713436731472281130988207399023815239852528906,12865788614422531768878171769038267076266208200249164027644212721909963715015912538682157638127903293282023380796412378159235431043017021949518573892381565899437599164703723050587964116914107635838030249942901605297513982608974593500166572552953195544515492725593747884602852061628830280449190167844572097543184555448060083835007200101317266753106995526429573085540857281097156159258319440414895242242967023265742835942344738184941128584859242462621792495405423196954908356769683815889035326257091875874458718611430785903143039161526479973858541524126951528796262613552089943663340076548393182371918642954593889432834,22194516202811321146792934079465991238594712937226367504517257988113211333368349800836879103947252405610400726941861867633710543721876626238467090611506859331575128297406631557631820626534381998686705168632059305910804423292984195597625141279765512951234238593649775486094326905655122386938572411401132183960062730500896105597665702000968846572795357957098192758080717128908256523579293163137417423771381528097786100281383788052729825837521137512379280310081930804124457815661946839040621474089357381345723789618079958299474682840114875558952249988571746058484000722421698440994062460208554903525444210802321182968014,2022329329707369117437055740094404969047484980501833952214571687130852032499620508208708908589247080600189902502365407836277381678968110704345539053376355432754797822267575827372488857681103447936055038802753292113151984972961755143427625893918328299356797405969999266508287378495280713821635381697950988327467894890827305051792226857027384943282520470216088404776455333696749084292781033264737672933515625823807581567568754027253581653106384383593181057349330506068884659072076739226363616897242406137010778123983315619151551375977509919335513557274798510437948502408760645678633359245877721858614575061700591393721,21638702445456858422878500352234793329413106731788942261751796025224145517964611169394617788434763506002565806620170893339110273126875286455095506459298086020278318872581385674653253080383128797980439557511752718258375238388481802546638936192461482797150514683008473213407715728694302414916863995043974867827876036585791719812271742103323384468954527534596036617313432433874380308883492321501736879178345427074046787174556058119038049586737477628511165980047288251497278209275581664775606335268904384984155864116270266473616061700061527150495070719210903471680082400487754898061609554671248760480063619759950744280907,20932768206097680299943959313782719928339866139959731166252002876096405653871733170637914957728294590217455322823662941811142831487382716004980657707514358763150029924714520812685697751484102120909926147024006189544048800446501267477163792293393919588659127430522309503845365000611784195390022621092266420671288509706282186373855655358090019051530324622779193478505342408854462043136412488215465955955421082850282626458587043647758494935495915329050933653468179762936320308005669155322055934931071589853638981754901315764484414249149121368560265856082417024956730272011998498550756243974623835494966366962683389714964,1365816667585940330490355905311774458514715320376130020996515573937571923987574784307504874484515899610747050162880466334946062918938639620242137371098595406424267003818882220942016240927776918797542668204898851284066695289242978919397682088055368818116198595348273129318762376760634794532531433638073562846988038755248023571028829475051882101071203979111269507596248527906600986677728810751499828436067766182628039345309355341295172437424660504415028913205507139100147921515616240146193076677157859750716375066201587358526136840334151066553547201088947345861316322897488659331106732575557394540428972305438213375814,5703448175361065536885380258834894924349694750000788978424055908887487214267289314410654116737467233333514153490994654420800717947051017245903088635547080581089891657444714373263301759995815635072257679749046151543038146531810310826817366207696928190231298874979984114964348460891792295427444943206125809938612729939665048974349693961742238426880015130297226114935093282566300228257419316454068258492582819117310017835605391570376283517758701794125467889060184214275911038527696714000045849219024045243597506828846590195831908281658454892131533791810760325400211405258812142759529523572815227489710851557846638137542,6412242406353564485058502679404605624009190790593030266854505291800626778702270387175472290319448965303250433574173375628339895100997329474893279692868549940279796264731093585208695625011062617868491258157215447275957107991387222489580499373804335870682739788296835432969262878909434810429803264643527538555130662379672012787064972208117475596665593916782896686056579449802576468324812730306559649834202797329883549294599723290402017221639617907711497472325019619452322282704828796586508386419927496666562295856731151167316262475184222145101211618002798513055006067228431048839763646095282531119806559583105533794495,12506213831497706601305625665856619892819919408470741644330076368184175310515183251146177621238406207206410185643656979107225155831507800032694528257147716038515158570256044209419514879851010106278924359714862316802415670557334433034976750101928783991744583819411313589306343712690219032368416678985323530251239318661396466801994308940886752046080901718450406046375904389766893043894196541576969928137946704159382893563356338387889137855413730990126192021766856444171515497507122402917749807424621383187173538906785892654668489198127757882153223185090960714890345630801099413698632285321494907662894187137142803150791,4340320683992731212484211057800765907410470847269768304639037529290512671362801376775768288042129836088810539204858832843247178308000345604701431226310915807542068901686097542648829915466491213307097734259829414895234796525272600474326857346693882386640793824277606043756669695477090601330450743232413209505539149906338741119182508496705355703793044044384724643256986023764031438551900073624644692938223394706241422593949897781383635695299729171084301185179708550600098470031089086344919627503113655735768701217637285566867914251954499504690075652022468818725559007318841314414541437592229352428286215595483845053638,11992304082547451264970842283976418853821301172975086658682116387543359417074268643442593212371361490968819128789238354995117145993279593426471336648259583293294202599078859260437992548184464009386152763827946804967424362206055435693041324410893236957405711025923054702040161696386453571055246924713260145964584750230359074777621444549946362450468684233332414284037283955916761049858000878784786268023500095161975906495439332741618288811384519280375489794382891880648564800750663555801045203854227681083222146920912455217541211811955477767635787030014152643158711960638325867606918508708678622347924499914937535267162,14695333877946105505101457937623624377562698430478247685331048607650568913937201633971254630714736577175024535322415669442798271475956496536083972430246897654017678266490639701809689918981250971730052435032797344400248226649579239038593902835536123498617918666329121083751772876090103853533035181736615043011673643017303605152279678650202512062770466963460251942403425462061196179491356440328364636048438335959347603428717042954470887883300891927932651483741068303515425618933688194621659816079976510221005329843899476003615861655015952079393164902282608831513778303062716347528913475870793908798463564832083549613643,6361624891550612817090909815430156259585522002511378700573226127309539860650523892977168943678195716824260472829831132024282728135758912178943090813161584286046605117495775878170654691942858452263763077967647297167266507685944611403131069163214134338169098006751105941940463654618427873599267528041887836331948305951890335742121311832653316741398094161561749334956600724220433324620401615490879450816097431926849306846384679126203940987154375373597650036103822699248044107851648286585837187416880739896147553285981829664828869063480707437325000260106329487862878699057790666160151383639198420965781777521408308842299,14948927140088320458060089936345715166494298631495857212773926944790409869483957673185876995292328343640197788589621807184518806705821872810447516194927678801617268846361533345460325613772855110322242304569109406957894646727384216069315325052819333705539766154972989576988248927288284161530384846682668538198851543196833452065614949748530253693700328342501577900059842225778082026779632761099626760985225309957646536118173500439351182747667021029407125807666947346322131872894915154624415940708414296769044070685030466034270063053482191494419465005898644603408406165778424189251953592599788015054586521957253320449350],"H2j":[9653640790649475435050720061635061544335995170813227062007808546473167610366804040613054457009646767723479128021709179513573358845884462519136809844401815066012655857973373223748942767836422506840658738556503260986697250346171921063441485400421533124068250604530993514803166454504801884882297625678932746326066096923436475087338628767636689481829832307623108408425959669915171224014581673426602770656342925462023157550194457295116217893440581116140543598050947318929500123378985275492765280831578803707538206440354119287576298034238031692982504012470196898579719660373199491817717767711160029710911173725338539566802,3578111860663702772408903345930659472256129868015762875031051677614699117364424442270785915866444756532836287879751640816575659073006676007210405202315496945346450727441553016187592354415793891110773645408147683476571812485850037389853330648238106038729525075512542830213816094853869971661719959033499816133612736102442725651388405183329714325258711655979055386253406319598230253658818466953001815116530962213661362799968355793928849708876651937113231862631691372187008559216884922263381652908899796744393080985272287681952842592674663712445064149288160957033524932550150413325097150870149209345404214256294282382085,2562656890570835296352376205216590519360952576353253013086344012422175466058176642832419040937235521572328705583208834436813588375562745525224328564354560731400723267162764903064018742843839822445601315505274421672289602485557719646504320106522113645676636456687468751723898215955665240524139836668877382766583475339565598073690853848639545227831264115164596396262772422415214665834769274554577301336288865874066248890243346947740610544045667761548206600923673948174739356732295677551749947395385332556227074205668024351973201205328576603362256016900712683688241615565934460363012498930253514800348031700419220337084,22298685304249156715841839507145325522077048988910268345524279200863227356693376151033928569980263444962701165900514081299580440300365488019578288962534096517468902687907593109404000193096117803450936780948162440311950526862133749440555125530434273281017640257175046682563772712146188162909037424635371282116160809281350332585723737917537784267577381007869736550494661878733387948458251550312048040279754696568539248453484809390032249968377837207868808482658171733689439009562188880777607125039187467565549644537971596666666932158369857160883674108786200103009448463903055431989786220430290067137368612432640074310237,5879475324785385886080118453628099122983640585548725925692818787221734315336181255707999432375105366554548265736590343628955580077952532008988837072008731794155978542038914506112861039350525606157951017828660604272526605818549217659336563240062224484914310161520768881507503977620229908361541865095980430141394883457555144123820008061398004875781145432780438239985999952863196781468403423593755390719871396312035325131303835880979744451815683310530516197085535308856850866798018523735074120787646575912319226234213646284739550604897450763442470406797690674949855848424274918433854009972115369882751833585035329242761,18385446607341413929216752317617998458160849115285197433981133872531647462267817752048089105851349541660795002685652456000086108157981979426453705134803682299691630928200421847304354380350114763235863451959398215394354125874494984531309790405988904217354164073819568789120760731377280912128364362051769093741704293517942028826498663326655241508795914202031051398724638536523567800437872676476082333745719105291491676453403521845621182329449421075607837301738332926110019535833222421409565228043580701032497151738816862657210572819375918881851411438625526045192015060739626198734346744421593858157488507552447503219157,1543023308301318791291636723263661645234407352972693347930324541592073282303070472660827743672362126204249434834670307886593868303926045601951702434485524524299146190187978789568968092026789881246345813079894138764374868096047892517784410005345559357208978859029831295378789933334638460830863012154730679683049737545160281582305039520027158141403805442275432519516975114987511502563484403828987844187725357101956491714139410763551382100998178318863295224089354110436171289236674317711473441156004575613857935802947903186710273135122934512388821226072049093290647716152026391828419205457729234939199662889356527012444,19612969155814925927900736991694631498815639143900750081709470615537990112217002271570654324774711607889679093067885009086620212727925361021546388555967618760690930383917718167829905900473725102007606380323545403188303409627969907029774876076466652636827981089598601596821629485556381455948439528301393466043329774616323471054547330305463639720319551756652789237846520745512886328152641158526571443916940675394167134193466655448590323552123565655514390433855054114283235652222186673800138041449545987929749641868001910765212175435331820335256408276886037716378072029444719891008048297796893611911457701948988529229282,16728597479991680407332164223276251930971882378040601546182090035388885277790620642130984559023085396113670088325023048100279567479347085329073035696608554975777409036805727779421519384442869313567486101701856985975948368091166211269762554257345698853374624187196304439193724792774291722910128170261256918581442838390388813651239625403911503915460141004046718650178671549506593787333200145941149923809156438433492770338609398675185696331933468246886804722117355530728325631706711888199439210221397335620762682713255422110226515677047306270190770133307509623731091673964502293431264279055367772707113499782043802219072,6959317283624626561280838810011851848606573383456333866356771642710009365943896928686358713606049305764133589953562485262421030190625379899341516940088176438653144375343629199857524649360799157617467464667207079997090732685762910728717721600193091207478294785009859545546272657408615665578978698966309579302786158306046780048259033960048367018506262121833776982527433736628482989970739839626561164331780819203300647377931749431379962789021848504353274218995997754499900534324222498419599756583548358913120017762065234354717544865856293340540081744252368993926137398125931373959455585431506453093937785431907339954440,11707820384786665143909181917722140695066077204138675859555940823963085499198625584153264077484611920625749300043796981737297557284495008476240804003977980903028035986014301427047695461308987163082644181568819427026377861293089760745032220979974314071873695748444473344481739404234865330820136242966321355292830007655295383627072182012764804101331409332152687101319613845603099019594628684448783718018158413013589965095889558760502141979036830513073469713570347578185733951700672935586145889495063730457422516713768592535269075934288536062686021973569079600458124449475763651523966025703378628943004868525425132768470,12680113365919882057574106113475868522128522384382601197321116786250024227710942753687346378669117549887826210207932325610070970266526443555090342822407043741408930676918514338947859254583933603158241276952467805479024344654828575004834480980171788527657050724406198542408746742354531228386476751247072501617975174749412587537766151828306153888252035411082379552917399551115964687725743020641384211728557413837203373250893065347048255589312756928959773947595990023044227966600250595372063312552514516053386563033360883348059069724261103859193470298590631028566611086928803669676829225666250863192855787196720603673760,9019657743968669607069997647539968262488442864840563257526073127843215521457164945521996034009113740811008633126128201485876365964359243077677187550395794512954090076458031575481109943534530172796807658845833964496790520042423061347000207701119849250007073432625973802817311058171823571086584900654526615124913824393095137876668486739795620319593113487319306758076868523633806281732675535191877729151172494277333403640038019691517232275137009983348569240826245496914996509643617684093222096189728055561573909735610063401084000594789204303691795045753669664876756897469727730211469836756344045393712182476806348262481,509727692658127329234819348282810282823358222955712460979035976368760532139665502509369544837059902335508770138210475703837249689840377266421270410968940058538125244069674567645496962345390684467242600183265156396927471901904730403435725549974213712745153254130090979413745442250230122176329142735628394058559735078808655502950813887104168441824680204081093532561399756958380811786995754253778833219233414597390819387529718886819478101169481249247654168746478268826094117295037052091370216680279456693786586815595643437522530315484348520350527079378100131478937805285900851443697897872168020710497135465069780807687,3842294189873253197555038084451026657880884971357471477404186912118522652991181539287485996470843289095459960588932515934990566949413638625169611068786524327230092661471599333492933504858312443510340452825109814219748343465626968500133039743956522352452046474898271016421645025612565409422475581907506677274527441400119913285024497410632467771786023570373229380492185234340140113773065511943229164821322784643171443642045254567266530741214826934397811463635644370547054062567012016231228876473774669826378368361454200858389911185989849447377758286974943747417740672897265471383352127822433439855380640722238771424561,12605457156020973444763168611522695283402376793806466187139735133742095649198553225011255516233464381926302993187553632508703365300132776800901755737316341235931477791227746456204649162573568121476427289406145613748980339685673661511024577823438911510307584137593479079190723698666793670318162798116104492476114229973922338166221669934104784402698512349426984473431614385866651807327515058966935011035923319124790759086336194395000632944700277782112868323483780168144642250558671981757792078139349701070563555668082796938131863328410412160150471825619049694173807371104601644825755844313657731729068891163705563867555,18221138784555811053296911040444811422299569221370698341523745856400091281377839778678778328149110548534138934160836481393838346908432982920562116626677959686450236292050295531261923474882738697393510842972966810110218027601675376030586402861098487543863740705626110087204717386977952136809165092530095562928623301371629208844732733664526090007002304626939446606391205626126192870615394522174649688440887870385705569710809581575204639778805466412903927058799148697158251622260213645585723159916754663707237605872275846686566820885362722073881904277317597403167380835907876296870877478221646920284310430371934404822311,12694464409184116198175216134705674117698495589897734763290223249700439697747213221960704240817308024376618649511257185410755720163743943692791263666036558979570909072667619923266653682384882259644954119285287063471541002032435823410204495631358202104734018269537402171761572193134509812396214919229814690930600798504895496564687656801956575973479011431776352638782289114699743527186781919502658003154674450714069197242726393985114420810547684173494018605147976810102913734546162705259030658206284298418521349062777115509219489672039075093329236647292016824670535351144784388483525751068225542810044999850751665224074,4201765615355271720665237538919680402664127861292891404309962354268106831635826650331041297039291644925592311983403700464576600435518882156854904159089879201301912105368413055078865795374091914623189759593456721300785707753873135853357294442043908826331857106210726005526370024055346666586491341046296314798619327898858072624823009991437876242325624019938022318176060332738994176297193724805935694309014605422020909137014676945305249645201662101488974241605863532571828450201507584679493905057922784236072997143238879363168245889469038437561181276242698369654938178116001428367837409133015026021079614840533626761027,5693818583095067032554302348404689889827513405370432124730856324552577938645345928545249455102636900381970277642590696482249653647276002965730520652542065397111012479589269283364878130676178205766673654461574816233876555267291293343730094421360715866449358521574582941335437947403997555554148186986038285554629922609604751054748762347310142603219823359220130919495866316927224981350998367935679597793982889611172206443879512553133682522147111994374985808397513270886689704297115982752710085691562031953231724109895260045500479387280386873351701423764105530811712645875225583048344423503433093456461313617037044573606],"BigXj":[{"Coords":[31961961449149592290215619337342545369164998201385135329342844666166714363705,64636392625998908156106021830673034903148364934246785109426074897879798496695]},{"Coords":[13561027879868215202586968035768135752207534764402067848160241312364043370282,31683215740694624076579960720726613640416539517460242899883851320256877874663]},{"Coords":[102970472861055393328233354777448191839076263179087526130927097177204776801806,19849778771794568183958877322544789075545226949228544528619329359950140265115]},{"Coords":[8366486354279759555693815735694831293559828965602250556327317858912116678471,24456250444071880675953816335612932507033433175255559522554349078047625549678]},{"Coords":[93126246885046599201299142306317944158536766260090154798797491446571717586613,101632074177392193573512178573083324222329391048269493231849116848088552218375]},{"Coords":[45944473181199785374833853975473363930687909609574532965286298616052742734642,49106561873713078177518155217967815241790729328033604070651886838013799968339]},{"Coords":[88807289702586806295763026580879412609419986472794654189482668002118698433065,66889255218792877467551818840857264643456782872798377645941824720058728156412]},{"Coords":[45745777770010867130655637386117976632006388263133845103488205463444756286557,58413618959379828248439575493421719547880693819703454359788283537541749522854]},{"Coords":[14931705718614911512649079486924798218629483414127465950786381421646404878840,70853895869521315016717813866703398949051565204254795550601147911581008651495]},{"Coords":[31702825468512650039750289022997764002837389172468049717092331147393818254752,90704921170203464181329063311130512192295590723462840980995045506481351030148]},{"Coords":[108133277897421036808605843118854356978565880360693563552498521263092161957794,33994893650793696043114830343063091347849012751372498052809673503667071259863]},{"Coords":[13603746174106309213882605187834221055267478293724779491981408043396477605150,47502402322605913877968636451206238145707201411072573659819652572960084227380]},{"Coords":[21962637032374642863765173367353663611071785709723940819398260699915154728736,65876190623954751874122457014542214494068664571689464338691288646258987627994]},{"Coords":[8139291295258406047002639746372064115101651961499427493344848502049438028449,13643120656693319356484507306610353728697986968072320539867387334577150577786]},{"Coords":[871083651129542234211830236854985246175496411885064575219875767816674532739,100904963893789549224657775356884044157291453214379932308347421012612568685620]},{"Coords":[98028745019433069815621229762947408124245116227553507407780733119772046992520,60367568163137055112812282822118701471566204774343904929920219271364583776122]},{"Coords":[37332951852807254347441974643993866127041633128152922228434313154811023954744,56046459898819968566785812285970001512876757161864884424831574905585289505077]},{"Coords":[11223798616675111197150792218010453124916879614948521844981845491687409376646,70914747125199464172751182264377339815163078089055967502760766110580370145293]},{"Coords":[62949410140974969962342726366577125978516456835571210444108422984760191628326,55668150354406094271153240357261264601037343235231498038021007487545647055721]},{"Coords":[7611358883569187056502001665501128526153865541559158134839099203014115911991,87617845479447207941483995353359860120852817257735643485765526341493112597509]}],"PaillierPKs":[{"N":25922769748919102678415192880711636156565612427571550685296776086119205445525743826557545692077634738129321690187868055737306626420419536394422682260657759329710259802294458956279773225258250955469954464209933873407784778802101265717840506851919529598154066919091078766953942869622551929743069097967501533345363150709912011028449270819442207860620552088412428865900112120786495620291333470644949767300948329241775121748888220588626655915013364614554467190860190736954650967874940702908395331234632114014125372505065096924932509595285205788545338407476139436404463823043865599023326570565049384032977060875483209339089},{"N":23930233287283899271771864413305422456138957780711273892670074191715648409585503033095084345383391541524625291548041741990557564183855401706042293717552023237439032182637019639795919249455653535670614575331737610284863144094845900714497635996654401300216924764570210541950557336240993007183309433063094227377624710274228010652758134777897718742178998545079447283838099902510469006366469099975469096355736757507201973304413688395278990349533350163833514531655073848517781662614171483003731680841330633223244205178982328422170273570503713081265847261211618499950287557687314846590616484106774575999250148317390509484773},{"N":23804125140052077689856128298352557083678652474445385365228110453726681237860799979845611556170894187976654278582576364089033396218674226546868809651353049956675922595541689542576794678062495339422204984765419389268325283682512000995221750412104207394441438666051694475950049774094896290106430636216894744335784327798634247450687264677393229214665686649911456587168142148024558282134024448427550922487022680890892554782651383972136386958126051377715096556862662265886688077689941967157694195467190297477735450118736949849327358586935699405848605265912107169200547464609552395233560924746135866463084686118233592906569},{"N":27732731445242071631661957657712700411367090291795241371771965432140171981887215839890743735562516245338158767440902124645306227526755834590210240211292920385793070069156192085968959067158127765511651425539136016999745924428061397793021945121990437538890398656832618417715425504589084090095239114803460787199036351739230987513003864153861252195944069425337294669643857426654756086277471320443733998616523518289821541295617435513033264977202437153989318832642208143170451837926277566396048774049270318848738844338850668187024045715008196311523744942555689097435377598835544336914580911633671909176827168167136470690349},{"N":24540078122494262833119917930091872139739129939617606686122284549157786865278292966087938309454800165081094474899057524752572006230843959997841521536274236615511587750039832014979332539924539915807860222967109230298738770371871063759834296194059907031260324597353713442284471130560805946122495294807423458083635025189319558646442212459161798625793784738344309603016513355951936699928410805609866016648244631951643648288242475041729105749202516848107495430809184564037582943457286768883109270231510808158554549441157152513493684930416951758705877335895250913277012541968048511163986915876606316087458297080987346429881},{"N":23068407873896187320610408658036992760323120237076281539139801143529656493030091268390954927616119732305210576479622679524747880246080257702939099128994719527894439722828526117361648236913823027514544862046712398251734066527697676237348724465158893599560473200351530224245041596340220963683429881340553208409699594299261181212989221107530971303522686320513564226387471374456547377291192484997988606654540899634665450162274963086331783789860908282085692296248300574631527561763641974772756130570734735297575564567681595756096492735284720794891113064512997620639494646662790341453069978107064092657029168133504185408209},{"N":23360724885676198523522179321150194474267520026708517257764444663025119039638464657158724624502663558960702469988070676415660798425916276572290617437202837750858738892140118363926690520956187802097449221385283612203760207950600195667994976400493623569930090999021596112553157677485561299069991215207522767873493631366488446241092099654975621689119086509041077742510323711222260189730828492291459421830791540197321337933505867430138627984859014648102694909985043765241359798051875756951108870386862501048751981261038842763679815348130953290890391440850806363449637432840586263665690832227799688631446932015796916844537},{"N":25572476038149983843824758627743773292157542015669155545898739136432359227667585235619146413408812705275735125477228881724887114180658812229689479785083051083069428146070988730518675361280497876215801249358736365876007532614766347833762716625529381645528767502376159614744663698030295284120589012492759402983796882103200388651743368106596836536656368370930363045639317610411594882976032564820311800297421945366798108347221120736308176815503106682839506833524058020959093518528060465861144447540812579976237229589574562145541453749754749768478003306870660214131556451734687719631047077200787163529663274266186702479657},{"N":22679491499676926565249058751269701914370165376325885490706178594236435587374452393672919867257890172146499232592163563478749644823548404207107209183759523050603597049541204457028947474998785130219644182203008088877544305999771879137962239304258371157231174473491797491114277983084811723764080082851754276992307408859865524067180300336894890064430698022388669278921501809909740064260359142339540812296913591956784925745003590749703099702370645409020780887758983568638652737043891478141095930983089074418014910987946825193073588506986312390146214478478314600989393866198945700334073322066709926152728868061176019551541},{"N":23556951187256713732039305973238937631620385080790804249029259279472926645248156172448686117325741554381537031072742207487366612992119859269685828207319515666102872111546619607137952974660084980511684952594879342586512197525409799350424247192892012163769784591542546626323584978204193899561072157767856334488337110957680579926475975853118319141371431419486620931003438350760541975587261961199260033262263106014958269750801811225868080849204705441859105664948039653986722714354940941410686784948916936213417318953574086609821961649007609305029496977916873440356977063491030736996785241653241262171162950673703965399497},{"N":25874692591276389940909836821933328634340387691760211719857424847912710687202655208899136151842265948895002254373718724704209721944297143062448179072459504026936041473424765480639475272190837266572978737262449980766383982513621598580661341958135147571122513631091491976191663115339463730624237942100977649124658328431032849468551008597071378488661492324861414296280692846039598797857140808360770338990664282941023358641770157837364612463858095463039043959476170224596463891235213200808423306885708639894810932553685021558027739945539621344374072593175483199343233185955959027063970833388545231587659014590298587532269},{"N":21093015027631740022404443614096248522776233243516651444497036871175728958780883068858760981924585432192986275662870128643941927265524238598903061299795143929360395711020210769824764384718922898979318706735662563638859312024117764087176816929100038836825165997745175858151391747552772916358596447916581236137266690055236206686429983418915105841208302705945838725058954761546083763560226985859597874827308926656876419352353487645531847757035757295720869824004015071252605178819856102760159009139713396577974830023684477215548955933062314225333947463154019890073099705030557644025494887348484646782031863159015194484417},{"N":25298229297396047246415163429032546137139715727559844391184017906947304850232141234045323209407471473714145852636924268416866274482603754141415609592221706725085407059971638122009913495964543366119323417218834638913881087432600102264473788528537095668778412431377856067113698729914757144153775835786313302871273438949909936263664301138604696985912220658568672102041006541952444982579070062275651333990266954050520365848194152044834016212084441028573044037025009772616765171118784908205140185837844772749992941537017860827787097838183799078426827486346760690086948873222139803967157701952297751113063507286886770253809},{"N":27142202438632787162126599492908508783692765215748557510315014134009044742375492012422395905792294364201376442258017321008269356413320158807932162865700040957744157446176162447390298999320446062496836729102114052332958615915307193716216287036998207324413342337908047902088094382893405585342830460716335897834006040665407645344104524772021574862180664953364488173834491400964015536206179143781066229852877159880337660767454184922616386524557470530917791514588890903382115919687896218697262329973216887300329083882938499296413225108475327673886217363092593458630101782913564451822536507792690041998191978031482893873661},{"N":24506900410165079432913879286738242981557799447704277709132563752281068885918764244597103897934251933625444124974453530023693766922128717584028552755128051187819589410024704161034785358235535327695240184593017832269373629062497324651346586921679971074785452914954524453931920025017233873766495332551435302696547239605953737313669053194482788679487077465271167890491044626060923037626210805459313170671202877996680415217025953459280403666974895608025476083146334864242075064839862857242870450430867849337473211116054259839281123892458791925377357496234454799948092884977174468592367921171996109259120511593665944142269},{"N":26694966767987840469949338865344547117483340362831650227215482575365406012636774021468648984974992022743149425563486792907591668251920735101399223711217247824036472514130615393737405150133409306326610912172081216216331513707092964488994949651842782342704418212963772590286378010081225253538245220740244206602153540135126863052186543426616293649543741875882042173380956119737322204906042367710990417544800462728321639324791151406955584010061660628304199783826293959912579926890912970052339895938137461119473504729752401310289221600181057106776643382986556174592325963163204522372078262520351770361427042538592078722253},{"N":28161406783438289776782541515550232234219338732182263528677255680862818571394539837092411279908340595856411618560352096707955778113841586575489526111758509944691006867155143609674220650793817498419172979829028602046249597147507621299153669762040424244341554256616377217119563525915851719009321686306763607672801085326365691030132510560260181669852932393003570340516931927914922146799899039434467722922041925474101320996856938035131446584298134298675299397155375412990353784006913691603024110559796744887732721945933471868150638226543773483734660294313186275340618342717882057017678734282256333631978096376709630195493},{"N":30290385531723706663194155723402482345164001328034021287910161482488063429892351584916277391109894294446801833020074687889362652138426091460224301803948089690115686705682426193759251182110547546779254274419781083851169949275087832187538168815749507922889270386625094587688358817642053715412200458038741309360104964334706289126542952674791148655002683650712544232003067953586569445443104249283623297733191839471659254940888571771772980381177972566220724293577306168494057111878161156955456998298372496716136324267059071403030493623531599851487444134766104137251811774500492630476212318493040236485031236879687941684761},{"N":21891762840438596060416034930044842446937758373617708235288562429502315391645647044939378215035677465574183685957522821315454029977571728750605988329881847569313802549118091978526315133726370633285214423147938264418314863217805659876561184725718735591303337902948467582966199323804114988231963307083517180657041313131586070203747291724798899561367507615511932716092324516747320587928666160741969956121773346301706809405054989477031949248189136343469258532041255092588255241987397760849320759799542054627513230744643622791455964220513319415609245199516100422991698341556744298439022451385568791478794837569530013904689},{"N":25360934335416714794999313991057897528923718232366653339706494176825638906694689891746545886915964196582662458688535283322287088397853865709093712398485753916163063777301385991907720781358632265326870516346689492128442283774600103789825609570294923480202759046857115137927714980847316960609776972337028789163184648676367675625026306027140091761009104192786329465543720196130052658782412428125321357130192023653185727111578488774341366834046035305712205910649341950409228079277410881842097288924692206421126356254520404943323384573694119449632324221088061482676921038116252201661916622983158849603411299895152156469481}],"ECDSAPub":{"Coords":[92492306118178589821640584737240636977398594678247616965910942704932180187323,27954057508764275913470910100133573369328128015811591924683199269013496685879]}} \ No newline at end of file diff --git a/test/_ecdsa_fixtures/keygen_data_15.json b/test/_ecdsa_fixtures/keygen_data_15.json new file mode 100644 index 00000000..ba70a16e --- /dev/null +++ b/test/_ecdsa_fixtures/keygen_data_15.json @@ -0,0 +1 @@ +{"PaillierSK":{"N":26694966767987840469949338865344547117483340362831650227215482575365406012636774021468648984974992022743149425563486792907591668251920735101399223711217247824036472514130615393737405150133409306326610912172081216216331513707092964488994949651842782342704418212963772590286378010081225253538245220740244206602153540135126863052186543426616293649543741875882042173380956119737322204906042367710990417544800462728321639324791151406955584010061660628304199783826293959912579926890912970052339895938137461119473504729752401310289221600181057106776643382986556174592325963163204522372078262520351770361427042538592078722253,"LambdaN":13347483383993920234974669432672273558741670181415825113607741287682703006318387010734324492487496011371574712781743396453795834125960367550699611855608623912018236257065307696868702575066704653163305456086040608108165756853546482244497474825921391171352209106481886295143189005040612626769122610370122103300913159964354332532076205041435111992248854623743090567577178988121521966429506436140036516128278726572472816788919853719327761052915837349393803367833315234616518036340131068259192000526319025941766887722302969983197958080668860232818533576805109686414181286841540121441545479894659798883919229345108597362094,"PhiN":26694966767987840469949338865344547117483340362831650227215482575365406012636774021468648984974992022743149425563486792907591668251920735101399223711217247824036472514130615393737405150133409306326610912172081216216331513707092964488994949651842782342704418212963772590286378010081225253538245220740244206601826319928708665064152410082870223984497709247486181135154357976243043932859012872280073032256557453144945633577839707438655522105831674698787606735666630469233036072680262136518384001052638051883533775444605939966395916161337720465637067153610219372828362573683080242883090959789319597767838458690217194724188},"NTildei":20958576649034914977467969756965874238364659071947031154211972997487243461262394795340258789930977809611131615831278870909123144191655991893039673506539165135637011485008482874021240555941833074286915507794874804218274011487390148860550531668300157069443584231888571925159473970195937554740938933226402208131160317818926784959057391389980505131685522579677264162724011263439981256344785140426649255485125637348357522582511064347878764724812085894898146080695383734063354384186594813474135513405234523117338489484424618032520881618202129068318264606277435174234229102947510033247339629069254901430086639327996737230861,"H1i":4340320683992731212484211057800765907410470847269768304639037529290512671362801376775768288042129836088810539204858832843247178308000345604701431226310915807542068901686097542648829915466491213307097734259829414895234796525272600474326857346693882386640793824277606043756669695477090601330450743232413209505539149906338741119182508496705355703793044044384724643256986023764031438551900073624644692938223394706241422593949897781383635695299729171084301185179708550600098470031089086344919627503113655735768701217637285566867914251954499504690075652022468818725559007318841314414541437592229352428286215595483845053638,"H2i":12605457156020973444763168611522695283402376793806466187139735133742095649198553225011255516233464381926302993187553632508703365300132776800901755737316341235931477791227746456204649162573568121476427289406145613748980339685673661511024577823438911510307584137593479079190723698666793670318162798116104492476114229973922338166221669934104784402698512349426984473431614385866651807327515058966935011035923319124790759086336194395000632944700277782112868323483780168144642250558671981757792078139349701070563555668082796938131863328410412160150471825619049694173807371104601644825755844313657731729068891163705563867555,"Alpha":1023094435758033828727853673503518021788995151117737839037946070482365553864568465644315553393944688902963836968988384394990225294732257746530227564851881567553360209237306936432805791479779939304173051885020337541848026131672756742835407070706738162837318162979809969804628526579807595224118894371555509059772618621915045040549576607268863097614025818155830682848815990351043703431037783534811652002775425789483463041920452457651727985999937388511129338606740425246707572000967994243010989135808378609628036864009180461112437457377955189851791308263759606402600493174816118790436037518160153786790429203708552207093,"Beta":1860061131643694695817560344647590137360314027299488290887477742620381398776184472673255174639087684086481255685046578654083161365235402325565620144261318703584722323023279097551178396140925876285390518555598774688241269768356890112772806657331277312045251521880326066666351129892396108778847150820144149152581979364487255301593614160060327670391933043996471452232518577991688163211300227104423654122341733610655802524691112957537427486265418815936109424732639273876045951477526099773842942727702599387335732909803482290416333522979671661580524857328538363407357006870364034759819132607071996003954232200419270251203,"P":69330825418177372200222501502021581383611555195597384888520537040371359962817847135110190227945281924750380675981609250217403420263772123412474082924390976121156608329083507069278289516288582401929390037149828203662253264387384968411058821157111958322833218693407365450213686462015463793043191757673407907211,"Q":75574524472414293284572575597782417204738057617991087888531426455007056011933812159174025765510359900845763821183521196183207302435565494366137598970419939852878609118141337998253014974665219517909225688756187523927503161680277043161036726224130445885897426288202048387873662662867749009811137847897584430653,"Xi":97621681963721318725701239838569490337028252181680696064833518340698211458725,"ShareID":99910913777216787121500121711080713911605201308487494263101624819470958719089,"Ks":[99910913777216787121500121711080713911605201308487494263101624819470958719074,99910913777216787121500121711080713911605201308487494263101624819470958719075,99910913777216787121500121711080713911605201308487494263101624819470958719076,99910913777216787121500121711080713911605201308487494263101624819470958719077,99910913777216787121500121711080713911605201308487494263101624819470958719078,99910913777216787121500121711080713911605201308487494263101624819470958719079,99910913777216787121500121711080713911605201308487494263101624819470958719080,99910913777216787121500121711080713911605201308487494263101624819470958719081,99910913777216787121500121711080713911605201308487494263101624819470958719082,99910913777216787121500121711080713911605201308487494263101624819470958719083,99910913777216787121500121711080713911605201308487494263101624819470958719084,99910913777216787121500121711080713911605201308487494263101624819470958719085,99910913777216787121500121711080713911605201308487494263101624819470958719086,99910913777216787121500121711080713911605201308487494263101624819470958719087,99910913777216787121500121711080713911605201308487494263101624819470958719088,99910913777216787121500121711080713911605201308487494263101624819470958719089,99910913777216787121500121711080713911605201308487494263101624819470958719090,99910913777216787121500121711080713911605201308487494263101624819470958719091,99910913777216787121500121711080713911605201308487494263101624819470958719092,99910913777216787121500121711080713911605201308487494263101624819470958719093],"NTildej":[20539613942852364097890357541124859329931817468396278432713468646303963073659662742703665137736867247354367523800071318544570641421320510992705137876681425752810096966415479528824625129989063402576946505816887222102561441464103605308386975248012283762854115939987945603503283072741824666735245204091384515192454349252950007899626081034649919068642018312817079235168086885705851677572363277983076857313399016624874649811334825694862350059490166759704819411086564625186038339099281295128259092469609539775245598320922394808913338827772001777479207381548603315272620456484970681705115865233047669675602308688791376160589,19461028678249357721701139019984545699598216253588699892259672060166427273458875608319855785678884811755179389274380053495578644060470229307987007292965327985966772681212738091909180148035785695413643708212165777295662698493311553457174395686873169155288384255670661532430410131045712913078128214239252258473814281283319061613409102410606683119900924722782015902970301519339718368508022893331969649513655635811522767629123667744907556474126774472529158147258343482417188228144974952598132795041139358631852141986745214674779692377899411672630850213748161088638857089501019216868292821676374914063004957409393293909513,23815206664659393600414832732918591362081086959256855451108811883313935088830793690110550688160373127903180149093000695761674277348327575728255258492470452704258920461298225437641154249481888087192237143947805411796310656512191138629555279666557122333244803756577286887501632314162770617970064401783626962319950524158923845138939649762251756759762119774585338772559055859463599094869423262313306255644927649977403492926253217608523813644206820059309357940964633363130901166057002430269910921882664166860038861390305316020579398429144038386189480114288127704265879389663380565983482028227028306457603727009698486364281,24531363009049563762536664273685630249930678743601473345646756718446749360580428942513295608401046098557387011967587876621178423418085640157221932880387840241062539585907115950101921176093340357598786734576629107604766098059509560466283874031181440387973563913507733219768477775440248994272649062713092103053254889978195382189063452107439308150731662099755008823588080977928436274879799764825887538020606485093127463680041134931480024720440536560752357773730443722294290727915022250638670491342013254556128005158924861347226548459626859027825687870031912255326425000561908947972742109607669897905187712585858898757609,25485947141960036800495601740358196336268148055632283852581334267632567089581351729697672659186150817483946028874699734841543360085445274610946793774678284845142698994270979141586640525566502581978495871744643885460820923876472270768798335817566781711314773489485670479771252073613546268231833675772584402239718946768734191504723089294480532048176604551680713541748910822012363078082926628834536634899606309021451196325472880525430322895659546741570135136047631868000597393506058143850364801619503318165686086392731222189995494225633540472226098357551602534472541794408218767265775850366289511546336446350346021282237,28927199961592509462716713052933904239681693743133323458100757563361525410670677174848159248824087482997906403441479071298957717300803186875289912194352025314864665854179681659546207985006650252942140268140510157106320849846175665072784539119695315757729095462689260495430463870222739869312073694346079553731438032339737072477343055235278557275309616493517920166164080693605271556685355062728635594753076381152709174590915306592547837200121302421882042327338955791916538647734045471143845013412592155994390976714634271247514800401724247381959070976404354024140134277339724455784411154537706347451440209596089260579033,23535119694477523772171748044630208131923028017288499693412795663706886468394056769073862998142660508474676105711590469240299300182072142961838102383606369450702330959729879893242049940029310408964084662077585876233411878169942718467081776763994846585950049650660912827541883992039288017630464390592382481783566823924532043610685633953209522603678841504652207254189077646669746333277037092923165111872444873598439940966325805716105630151638779643981500665152639984434504817034412086671254173379166038071662889121653550757613052820175939040916661555723756176613161036717523938816196299007092417098079561970714605061629,25950783447263038071689830748627856944354421735888733670277679971199180982562433131778324823115329151828330351648021612294094370722267669972986008148650808031918722892417970047773133521052009921040352676366121022268583455702531977371124075420219730460605780729481918672698487964603151661149289116143779941433746038933525309985350586367303720987487112290090195247099032317451409521767630753382551078895196505751734814139673689437231496521554705226938471456297964527299627857211400740652357956604961830754401147898467475649318148547949522809325493238323065337997986089837089904293908389128632840557033917922339991780941,18687318215344566555182740902454336428592486945614858718824661784376438207943593936740995084200358460316665071770681463630810552799361606949595415859491617650913620153502889285378972038135570359724693463761135116433672709408902151793979112715679738392883186006369274528906256519536716049908878346476950103274343269649895419042195937774381514132210454482820166758270346958078142742840173830940449171621914508101385104081796180941351697633772994457709351610367195330318869580666697900958479010130985251846923421963647318437209519428820003347978947799013079168765159404172743072632243706939700207639779907975142224264481,23171083837957860801722218699383337900446240030786871268841926233540016534306722256418697981846104677203759841627977766724259030420015851980511088229043403050763668171722648141766116654882525867416891436685059276174192868946692072206824573955678962077288068058032958478942750338128252470165933443869447212456023356245726416751721989152798706366691818486325734110680894776063318626260722657549472271184224308146689662638536101291469177898475337027531732897213355102104990685266062044811809193138366772764276162181116512200063463469172637189164324496242489479899844513951546392297220122152709400797483802836017803985829,31343857270714098359641269819793471247744609345771779520849062499842222751853736635128030263011267623933026775894009843057499037409921342064326054830123558338476304900840753732976691522721379417037190976719048367738172877422341695489954487825668390415147795382659776979019893183466662138357984500601883268994989224933833342232607751640920642550766835871191739404896219865225614116435580799461951708239551693029017567595268404121330207564314786956323833427106966279493560190075571199071036639702485305576334075428484139050116713328535867597124971991546934922511844853709001583656359284723717084806850145785405536911177,21157487427733991932564510362138492162446873104287756897983482468142107066461483198236006898398559574298806811271053872211924774119515269456039458266616445024300383802406544466004007569246261860103312006457776588799344222340569710165666518367783547810282003032927364478322210948885423703591814633243286070072754280297773344097615910071723846039979528910869815670975142743376293197136856592859188733532786144697373533341877747464753616005694543102759948736736802569257325101204596297349394258616025918915521692968786299735438817719576226325356937526633071323693338940757362235570825853130085312301448111119042363796113,20871071186633559430638470998115518791893553646420368867902204568431630269565952322291766136370093127894084798814242475456617969102595313205728405129168253735048454253508700456761223106599134617920774227174015124829476988377890165462875183814841087993485125686632410376362585538078467534668954228084080919739417042353928509644795709201564083148094079836306167650314513450129297783489119015593642581024870311297891618816623633162063381775243950740681581620150958717466968747843706102214690157071025611480716612116918336154774385432247274600064909320680551901771492165221773721500541614228617829117370166464409020423677,27392140202372139560911530190722295626016991167776777076251374167016701252229100335980281077736021393527993281083564981442696373714433732500818431355034758384480955155409564373832745499649881975977124862697809360957420580753883129965594447943274206109113518479198329538838000642865155652137973709624008263285324174285285129803357738290385065522262059795474318914719823768887144641758090777562619592046692917101170170722723905514971631800061092086777420826999668590868568525034863406950714560799453233548147404988580929389926995856613912328981176466707497680180241272497358147647189027922268738449537259460751070153621,27430458285560064975603737623690566617914765114564307656159371148918349993794669623672608540855772729568670170546349850367039352526804750358257162362490778729908291097260480430890476823722553654389178498566668573496227008913481934125881578164602723285712928871252207939941804689355173665470036039114037118963971589320342018774107583274314158608546842149328506685304690959566263296291871998398637364399822435359987280203416832697098234360106966146607816540746285266790106830402077656904149244001383199485864465648143588026246539864484902228828598281873311925831114015086450712030764672165915248196209070047454495085169,20958576649034914977467969756965874238364659071947031154211972997487243461262394795340258789930977809611131615831278870909123144191655991893039673506539165135637011485008482874021240555941833074286915507794874804218274011487390148860550531668300157069443584231888571925159473970195937554740938933226402208131160317818926784959057391389980505131685522579677264162724011263439981256344785140426649255485125637348357522582511064347878764724812085894898146080695383734063354384186594813474135513405234523117338489484424618032520881618202129068318264606277435174234229102947510033247339629069254901430086639327996737230861,25673210614761004254141737312053451635018146154378993341101985326929566270344015265597835170941666913606119762699769929117810862190840467973932188558749547474174367822508601158829928161219529997833862214002106486508027112865708012732033692783629855485545330232068552007350877531730729790772847199443436084419382562932662568511421420283558235026303217907581598166628555941188586096538364407553738314729036218493332920854764055946289816665260688813327844579390598566768671973314358968068459214729157676432241630688442073088681756498136814491310636028421098965714509622937097403466307515165856202257786336739101389349089,27062431131775909264962122516003720577621307700606752850978674545503762322327045712593154396229756047740198870458644425173406714147601486563284216353367017457813364860861671576291918230182938220436949095109018225648486931358793025228571750572403143070647269508389021099989559676856968002395615757641794675119572488971947338527037552287756390904188517823120698354616567162661395526975254448758091053074808436661809101512025437321837959528689272191238705432334775200965152419124620293521962173467865862080429867958898040527206234108561471429991355210673373595922083144022410446012714221026174220695995286555692560595981,26101397013404440939950108603288565551073409553356897393691328641679505760230621741096317929709636865532238670826796537369580597665138924272200816037026280780915781305836081579178356868109017075793286763556497902869947712856535743263321959264839901002581734771178344662509473227839268090064000382806059250315977679226653239225555007655990623485545590336008766750972486014525144801720879444739045959169483687885427725508164188831961197284042818573448808100923870021600896976125650269597381009562192855793477760166114366163011349461311146903814241124631772470784181050979028948750586113514587005436500903242591757553293,22437602225740742482465534898349205983133213895660550238212001804732032977697798637757435728694311659299624886491819969612531644822478331097020027346346025174540910579800256280214031292073085792970245723432769912206355626120327772649905875827091190500315669126429992547075064736037570537735332469814000462556933603719315364923773085086614780916637137068518726889173784282955430621992569759561719528189938429235007732504425905045067985337249988673084527372002559031400047880307427208848753891291386460253720313523072063965808016289774609282102972264056704286287440985034888143293816594327214769326166521224390393446693],"H1j":[16370062914568124684409954423220013634799944354368183091925443712820668316759795091290952642141219645055533606292548565759917746455430426634828957426644826424037530474618159463204943752577732484149675671820306363344833458247384057865310742915406677379586789735200748327711872632191061145184949312294612467345847214916930759229195852858849386686352293049987465485866498220082468131280135383612600619493426252446949294373638968518891137429993551161437309269629260378927918725566711632082553316166822070110359114229533322390061282040482480263995079579444943917107997110057038662405191417861817663789094790962966996587522,5792666313208572350705907594949414590804636531753541567087068453778543363077542142305947911768781865374122070750607847515026168979710170113788718287465368491981654823945993941924700096393523941715256095048825025361038086570514643251828085846380954791657627403414038681940866434304045104130214177360598208974353162505514170835103706979081795485247158115653501838694614859268884296606546104394637012764653804556264770973741677326601115655746125293204398034469241183574629519235451142797709676366285591723984602961129858687877266469708766607187000988412118886394000517917001485137799190522482532376333362935442751367745,14510201356793997359892744405553071944121896518459738320470368478827891282273167297002903311912769777071155241288755372185351193850631471716718530488323104261827697027757019895835360274243188719367049075501436153398857359555924247334095665350350441220453460409146684994664351725204034521761578947269005519140498383255606322844603919000682223940913285551513356600061526959181206093504072618536296265435830192715190515397064435874311583709516596584871136822289753837472532490128304199643440789002058080030111113389709287097531544417461853059085059819958060220257218705882557929843952675556987949500595639655528439052202,21994027187251658420706956116678134303619268245311594874227984400819404446053485122189884678892175444688722527594580466254690437593853064923544979570444911946308283663229116693350631331935027065689358169246815279257122823014594309629197723508317910829246255814111959552337648906237682616732913305786178221005434606679461852547394872592127050442856550471832240167936976142756988960345619830477159914332536955389792251800932867389016006568741180137556936582683389834385412181167798283357296952856933963222988284608097870458140102834156304710781157917296313315513842893014212063887070100364867105131178923785373561146050,9913834538682656788610829579771569556624609911472542281771864528920206652057360227595914694025069327892774241543292898072673087864732558768588752951687639831868499912733997907550450742144719953844448973554109420086839278177283587750852958353526057789017170152122423018814264172807655239353760715885145548388992476483731471865364270428702324445078126354834888878640191523880163270112743069852403951565444480363239177556818094412397417215136415082364220806171351930690164376890892251369372868624028034980680685551131786332553623705883769998271596791035214982761974622986462384695349153129828098712177799482890430520965,15464554656029222110560140639422624868539470020281691165975400448606613120973644407534365935510334228227263162749065335291017684520353168923100727746351715681760916446206803485743114757577242723665933043744987644589191843035807511863595701170012104449542518101585729174897996392297770818633483533801844500665798250501473521227123975005972911918718226524366806206633841675388137041998857549215313632375036761617534744890091542919972307048750757690677067439820416806817051344016166652866968067639055986253789416713411110543055264622333767216550525033482750914452894139691102713436731472281130988207399023815239852528906,12865788614422531768878171769038267076266208200249164027644212721909963715015912538682157638127903293282023380796412378159235431043017021949518573892381565899437599164703723050587964116914107635838030249942901605297513982608974593500166572552953195544515492725593747884602852061628830280449190167844572097543184555448060083835007200101317266753106995526429573085540857281097156159258319440414895242242967023265742835942344738184941128584859242462621792495405423196954908356769683815889035326257091875874458718611430785903143039161526479973858541524126951528796262613552089943663340076548393182371918642954593889432834,22194516202811321146792934079465991238594712937226367504517257988113211333368349800836879103947252405610400726941861867633710543721876626238467090611506859331575128297406631557631820626534381998686705168632059305910804423292984195597625141279765512951234238593649775486094326905655122386938572411401132183960062730500896105597665702000968846572795357957098192758080717128908256523579293163137417423771381528097786100281383788052729825837521137512379280310081930804124457815661946839040621474089357381345723789618079958299474682840114875558952249988571746058484000722421698440994062460208554903525444210802321182968014,2022329329707369117437055740094404969047484980501833952214571687130852032499620508208708908589247080600189902502365407836277381678968110704345539053376355432754797822267575827372488857681103447936055038802753292113151984972961755143427625893918328299356797405969999266508287378495280713821635381697950988327467894890827305051792226857027384943282520470216088404776455333696749084292781033264737672933515625823807581567568754027253581653106384383593181057349330506068884659072076739226363616897242406137010778123983315619151551375977509919335513557274798510437948502408760645678633359245877721858614575061700591393721,21638702445456858422878500352234793329413106731788942261751796025224145517964611169394617788434763506002565806620170893339110273126875286455095506459298086020278318872581385674653253080383128797980439557511752718258375238388481802546638936192461482797150514683008473213407715728694302414916863995043974867827876036585791719812271742103323384468954527534596036617313432433874380308883492321501736879178345427074046787174556058119038049586737477628511165980047288251497278209275581664775606335268904384984155864116270266473616061700061527150495070719210903471680082400487754898061609554671248760480063619759950744280907,20932768206097680299943959313782719928339866139959731166252002876096405653871733170637914957728294590217455322823662941811142831487382716004980657707514358763150029924714520812685697751484102120909926147024006189544048800446501267477163792293393919588659127430522309503845365000611784195390022621092266420671288509706282186373855655358090019051530324622779193478505342408854462043136412488215465955955421082850282626458587043647758494935495915329050933653468179762936320308005669155322055934931071589853638981754901315764484414249149121368560265856082417024956730272011998498550756243974623835494966366962683389714964,1365816667585940330490355905311774458514715320376130020996515573937571923987574784307504874484515899610747050162880466334946062918938639620242137371098595406424267003818882220942016240927776918797542668204898851284066695289242978919397682088055368818116198595348273129318762376760634794532531433638073562846988038755248023571028829475051882101071203979111269507596248527906600986677728810751499828436067766182628039345309355341295172437424660504415028913205507139100147921515616240146193076677157859750716375066201587358526136840334151066553547201088947345861316322897488659331106732575557394540428972305438213375814,5703448175361065536885380258834894924349694750000788978424055908887487214267289314410654116737467233333514153490994654420800717947051017245903088635547080581089891657444714373263301759995815635072257679749046151543038146531810310826817366207696928190231298874979984114964348460891792295427444943206125809938612729939665048974349693961742238426880015130297226114935093282566300228257419316454068258492582819117310017835605391570376283517758701794125467889060184214275911038527696714000045849219024045243597506828846590195831908281658454892131533791810760325400211405258812142759529523572815227489710851557846638137542,6412242406353564485058502679404605624009190790593030266854505291800626778702270387175472290319448965303250433574173375628339895100997329474893279692868549940279796264731093585208695625011062617868491258157215447275957107991387222489580499373804335870682739788296835432969262878909434810429803264643527538555130662379672012787064972208117475596665593916782896686056579449802576468324812730306559649834202797329883549294599723290402017221639617907711497472325019619452322282704828796586508386419927496666562295856731151167316262475184222145101211618002798513055006067228431048839763646095282531119806559583105533794495,12506213831497706601305625665856619892819919408470741644330076368184175310515183251146177621238406207206410185643656979107225155831507800032694528257147716038515158570256044209419514879851010106278924359714862316802415670557334433034976750101928783991744583819411313589306343712690219032368416678985323530251239318661396466801994308940886752046080901718450406046375904389766893043894196541576969928137946704159382893563356338387889137855413730990126192021766856444171515497507122402917749807424621383187173538906785892654668489198127757882153223185090960714890345630801099413698632285321494907662894187137142803150791,4340320683992731212484211057800765907410470847269768304639037529290512671362801376775768288042129836088810539204858832843247178308000345604701431226310915807542068901686097542648829915466491213307097734259829414895234796525272600474326857346693882386640793824277606043756669695477090601330450743232413209505539149906338741119182508496705355703793044044384724643256986023764031438551900073624644692938223394706241422593949897781383635695299729171084301185179708550600098470031089086344919627503113655735768701217637285566867914251954499504690075652022468818725559007318841314414541437592229352428286215595483845053638,11992304082547451264970842283976418853821301172975086658682116387543359417074268643442593212371361490968819128789238354995117145993279593426471336648259583293294202599078859260437992548184464009386152763827946804967424362206055435693041324410893236957405711025923054702040161696386453571055246924713260145964584750230359074777621444549946362450468684233332414284037283955916761049858000878784786268023500095161975906495439332741618288811384519280375489794382891880648564800750663555801045203854227681083222146920912455217541211811955477767635787030014152643158711960638325867606918508708678622347924499914937535267162,14695333877946105505101457937623624377562698430478247685331048607650568913937201633971254630714736577175024535322415669442798271475956496536083972430246897654017678266490639701809689918981250971730052435032797344400248226649579239038593902835536123498617918666329121083751772876090103853533035181736615043011673643017303605152279678650202512062770466963460251942403425462061196179491356440328364636048438335959347603428717042954470887883300891927932651483741068303515425618933688194621659816079976510221005329843899476003615861655015952079393164902282608831513778303062716347528913475870793908798463564832083549613643,6361624891550612817090909815430156259585522002511378700573226127309539860650523892977168943678195716824260472829831132024282728135758912178943090813161584286046605117495775878170654691942858452263763077967647297167266507685944611403131069163214134338169098006751105941940463654618427873599267528041887836331948305951890335742121311832653316741398094161561749334956600724220433324620401615490879450816097431926849306846384679126203940987154375373597650036103822699248044107851648286585837187416880739896147553285981829664828869063480707437325000260106329487862878699057790666160151383639198420965781777521408308842299,14948927140088320458060089936345715166494298631495857212773926944790409869483957673185876995292328343640197788589621807184518806705821872810447516194927678801617268846361533345460325613772855110322242304569109406957894646727384216069315325052819333705539766154972989576988248927288284161530384846682668538198851543196833452065614949748530253693700328342501577900059842225778082026779632761099626760985225309957646536118173500439351182747667021029407125807666947346322131872894915154624415940708414296769044070685030466034270063053482191494419465005898644603408406165778424189251953592599788015054586521957253320449350],"H2j":[9653640790649475435050720061635061544335995170813227062007808546473167610366804040613054457009646767723479128021709179513573358845884462519136809844401815066012655857973373223748942767836422506840658738556503260986697250346171921063441485400421533124068250604530993514803166454504801884882297625678932746326066096923436475087338628767636689481829832307623108408425959669915171224014581673426602770656342925462023157550194457295116217893440581116140543598050947318929500123378985275492765280831578803707538206440354119287576298034238031692982504012470196898579719660373199491817717767711160029710911173725338539566802,3578111860663702772408903345930659472256129868015762875031051677614699117364424442270785915866444756532836287879751640816575659073006676007210405202315496945346450727441553016187592354415793891110773645408147683476571812485850037389853330648238106038729525075512542830213816094853869971661719959033499816133612736102442725651388405183329714325258711655979055386253406319598230253658818466953001815116530962213661362799968355793928849708876651937113231862631691372187008559216884922263381652908899796744393080985272287681952842592674663712445064149288160957033524932550150413325097150870149209345404214256294282382085,2562656890570835296352376205216590519360952576353253013086344012422175466058176642832419040937235521572328705583208834436813588375562745525224328564354560731400723267162764903064018742843839822445601315505274421672289602485557719646504320106522113645676636456687468751723898215955665240524139836668877382766583475339565598073690853848639545227831264115164596396262772422415214665834769274554577301336288865874066248890243346947740610544045667761548206600923673948174739356732295677551749947395385332556227074205668024351973201205328576603362256016900712683688241615565934460363012498930253514800348031700419220337084,22298685304249156715841839507145325522077048988910268345524279200863227356693376151033928569980263444962701165900514081299580440300365488019578288962534096517468902687907593109404000193096117803450936780948162440311950526862133749440555125530434273281017640257175046682563772712146188162909037424635371282116160809281350332585723737917537784267577381007869736550494661878733387948458251550312048040279754696568539248453484809390032249968377837207868808482658171733689439009562188880777607125039187467565549644537971596666666932158369857160883674108786200103009448463903055431989786220430290067137368612432640074310237,5879475324785385886080118453628099122983640585548725925692818787221734315336181255707999432375105366554548265736590343628955580077952532008988837072008731794155978542038914506112861039350525606157951017828660604272526605818549217659336563240062224484914310161520768881507503977620229908361541865095980430141394883457555144123820008061398004875781145432780438239985999952863196781468403423593755390719871396312035325131303835880979744451815683310530516197085535308856850866798018523735074120787646575912319226234213646284739550604897450763442470406797690674949855848424274918433854009972115369882751833585035329242761,18385446607341413929216752317617998458160849115285197433981133872531647462267817752048089105851349541660795002685652456000086108157981979426453705134803682299691630928200421847304354380350114763235863451959398215394354125874494984531309790405988904217354164073819568789120760731377280912128364362051769093741704293517942028826498663326655241508795914202031051398724638536523567800437872676476082333745719105291491676453403521845621182329449421075607837301738332926110019535833222421409565228043580701032497151738816862657210572819375918881851411438625526045192015060739626198734346744421593858157488507552447503219157,1543023308301318791291636723263661645234407352972693347930324541592073282303070472660827743672362126204249434834670307886593868303926045601951702434485524524299146190187978789568968092026789881246345813079894138764374868096047892517784410005345559357208978859029831295378789933334638460830863012154730679683049737545160281582305039520027158141403805442275432519516975114987511502563484403828987844187725357101956491714139410763551382100998178318863295224089354110436171289236674317711473441156004575613857935802947903186710273135122934512388821226072049093290647716152026391828419205457729234939199662889356527012444,19612969155814925927900736991694631498815639143900750081709470615537990112217002271570654324774711607889679093067885009086620212727925361021546388555967618760690930383917718167829905900473725102007606380323545403188303409627969907029774876076466652636827981089598601596821629485556381455948439528301393466043329774616323471054547330305463639720319551756652789237846520745512886328152641158526571443916940675394167134193466655448590323552123565655514390433855054114283235652222186673800138041449545987929749641868001910765212175435331820335256408276886037716378072029444719891008048297796893611911457701948988529229282,16728597479991680407332164223276251930971882378040601546182090035388885277790620642130984559023085396113670088325023048100279567479347085329073035696608554975777409036805727779421519384442869313567486101701856985975948368091166211269762554257345698853374624187196304439193724792774291722910128170261256918581442838390388813651239625403911503915460141004046718650178671549506593787333200145941149923809156438433492770338609398675185696331933468246886804722117355530728325631706711888199439210221397335620762682713255422110226515677047306270190770133307509623731091673964502293431264279055367772707113499782043802219072,6959317283624626561280838810011851848606573383456333866356771642710009365943896928686358713606049305764133589953562485262421030190625379899341516940088176438653144375343629199857524649360799157617467464667207079997090732685762910728717721600193091207478294785009859545546272657408615665578978698966309579302786158306046780048259033960048367018506262121833776982527433736628482989970739839626561164331780819203300647377931749431379962789021848504353274218995997754499900534324222498419599756583548358913120017762065234354717544865856293340540081744252368993926137398125931373959455585431506453093937785431907339954440,11707820384786665143909181917722140695066077204138675859555940823963085499198625584153264077484611920625749300043796981737297557284495008476240804003977980903028035986014301427047695461308987163082644181568819427026377861293089760745032220979974314071873695748444473344481739404234865330820136242966321355292830007655295383627072182012764804101331409332152687101319613845603099019594628684448783718018158413013589965095889558760502141979036830513073469713570347578185733951700672935586145889495063730457422516713768592535269075934288536062686021973569079600458124449475763651523966025703378628943004868525425132768470,12680113365919882057574106113475868522128522384382601197321116786250024227710942753687346378669117549887826210207932325610070970266526443555090342822407043741408930676918514338947859254583933603158241276952467805479024344654828575004834480980171788527657050724406198542408746742354531228386476751247072501617975174749412587537766151828306153888252035411082379552917399551115964687725743020641384211728557413837203373250893065347048255589312756928959773947595990023044227966600250595372063312552514516053386563033360883348059069724261103859193470298590631028566611086928803669676829225666250863192855787196720603673760,9019657743968669607069997647539968262488442864840563257526073127843215521457164945521996034009113740811008633126128201485876365964359243077677187550395794512954090076458031575481109943534530172796807658845833964496790520042423061347000207701119849250007073432625973802817311058171823571086584900654526615124913824393095137876668486739795620319593113487319306758076868523633806281732675535191877729151172494277333403640038019691517232275137009983348569240826245496914996509643617684093222096189728055561573909735610063401084000594789204303691795045753669664876756897469727730211469836756344045393712182476806348262481,509727692658127329234819348282810282823358222955712460979035976368760532139665502509369544837059902335508770138210475703837249689840377266421270410968940058538125244069674567645496962345390684467242600183265156396927471901904730403435725549974213712745153254130090979413745442250230122176329142735628394058559735078808655502950813887104168441824680204081093532561399756958380811786995754253778833219233414597390819387529718886819478101169481249247654168746478268826094117295037052091370216680279456693786586815595643437522530315484348520350527079378100131478937805285900851443697897872168020710497135465069780807687,3842294189873253197555038084451026657880884971357471477404186912118522652991181539287485996470843289095459960588932515934990566949413638625169611068786524327230092661471599333492933504858312443510340452825109814219748343465626968500133039743956522352452046474898271016421645025612565409422475581907506677274527441400119913285024497410632467771786023570373229380492185234340140113773065511943229164821322784643171443642045254567266530741214826934397811463635644370547054062567012016231228876473774669826378368361454200858389911185989849447377758286974943747417740672897265471383352127822433439855380640722238771424561,12605457156020973444763168611522695283402376793806466187139735133742095649198553225011255516233464381926302993187553632508703365300132776800901755737316341235931477791227746456204649162573568121476427289406145613748980339685673661511024577823438911510307584137593479079190723698666793670318162798116104492476114229973922338166221669934104784402698512349426984473431614385866651807327515058966935011035923319124790759086336194395000632944700277782112868323483780168144642250558671981757792078139349701070563555668082796938131863328410412160150471825619049694173807371104601644825755844313657731729068891163705563867555,18221138784555811053296911040444811422299569221370698341523745856400091281377839778678778328149110548534138934160836481393838346908432982920562116626677959686450236292050295531261923474882738697393510842972966810110218027601675376030586402861098487543863740705626110087204717386977952136809165092530095562928623301371629208844732733664526090007002304626939446606391205626126192870615394522174649688440887870385705569710809581575204639778805466412903927058799148697158251622260213645585723159916754663707237605872275846686566820885362722073881904277317597403167380835907876296870877478221646920284310430371934404822311,12694464409184116198175216134705674117698495589897734763290223249700439697747213221960704240817308024376618649511257185410755720163743943692791263666036558979570909072667619923266653682384882259644954119285287063471541002032435823410204495631358202104734018269537402171761572193134509812396214919229814690930600798504895496564687656801956575973479011431776352638782289114699743527186781919502658003154674450714069197242726393985114420810547684173494018605147976810102913734546162705259030658206284298418521349062777115509219489672039075093329236647292016824670535351144784388483525751068225542810044999850751665224074,4201765615355271720665237538919680402664127861292891404309962354268106831635826650331041297039291644925592311983403700464576600435518882156854904159089879201301912105368413055078865795374091914623189759593456721300785707753873135853357294442043908826331857106210726005526370024055346666586491341046296314798619327898858072624823009991437876242325624019938022318176060332738994176297193724805935694309014605422020909137014676945305249645201662101488974241605863532571828450201507584679493905057922784236072997143238879363168245889469038437561181276242698369654938178116001428367837409133015026021079614840533626761027,5693818583095067032554302348404689889827513405370432124730856324552577938645345928545249455102636900381970277642590696482249653647276002965730520652542065397111012479589269283364878130676178205766673654461574816233876555267291293343730094421360715866449358521574582941335437947403997555554148186986038285554629922609604751054748762347310142603219823359220130919495866316927224981350998367935679597793982889611172206443879512553133682522147111994374985808397513270886689704297115982752710085691562031953231724109895260045500479387280386873351701423764105530811712645875225583048344423503433093456461313617037044573606],"BigXj":[{"Coords":[31961961449149592290215619337342545369164998201385135329342844666166714363705,64636392625998908156106021830673034903148364934246785109426074897879798496695]},{"Coords":[13561027879868215202586968035768135752207534764402067848160241312364043370282,31683215740694624076579960720726613640416539517460242899883851320256877874663]},{"Coords":[102970472861055393328233354777448191839076263179087526130927097177204776801806,19849778771794568183958877322544789075545226949228544528619329359950140265115]},{"Coords":[8366486354279759555693815735694831293559828965602250556327317858912116678471,24456250444071880675953816335612932507033433175255559522554349078047625549678]},{"Coords":[93126246885046599201299142306317944158536766260090154798797491446571717586613,101632074177392193573512178573083324222329391048269493231849116848088552218375]},{"Coords":[45944473181199785374833853975473363930687909609574532965286298616052742734642,49106561873713078177518155217967815241790729328033604070651886838013799968339]},{"Coords":[88807289702586806295763026580879412609419986472794654189482668002118698433065,66889255218792877467551818840857264643456782872798377645941824720058728156412]},{"Coords":[45745777770010867130655637386117976632006388263133845103488205463444756286557,58413618959379828248439575493421719547880693819703454359788283537541749522854]},{"Coords":[14931705718614911512649079486924798218629483414127465950786381421646404878840,70853895869521315016717813866703398949051565204254795550601147911581008651495]},{"Coords":[31702825468512650039750289022997764002837389172468049717092331147393818254752,90704921170203464181329063311130512192295590723462840980995045506481351030148]},{"Coords":[108133277897421036808605843118854356978565880360693563552498521263092161957794,33994893650793696043114830343063091347849012751372498052809673503667071259863]},{"Coords":[13603746174106309213882605187834221055267478293724779491981408043396477605150,47502402322605913877968636451206238145707201411072573659819652572960084227380]},{"Coords":[21962637032374642863765173367353663611071785709723940819398260699915154728736,65876190623954751874122457014542214494068664571689464338691288646258987627994]},{"Coords":[8139291295258406047002639746372064115101651961499427493344848502049438028449,13643120656693319356484507306610353728697986968072320539867387334577150577786]},{"Coords":[871083651129542234211830236854985246175496411885064575219875767816674532739,100904963893789549224657775356884044157291453214379932308347421012612568685620]},{"Coords":[98028745019433069815621229762947408124245116227553507407780733119772046992520,60367568163137055112812282822118701471566204774343904929920219271364583776122]},{"Coords":[37332951852807254347441974643993866127041633128152922228434313154811023954744,56046459898819968566785812285970001512876757161864884424831574905585289505077]},{"Coords":[11223798616675111197150792218010453124916879614948521844981845491687409376646,70914747125199464172751182264377339815163078089055967502760766110580370145293]},{"Coords":[62949410140974969962342726366577125978516456835571210444108422984760191628326,55668150354406094271153240357261264601037343235231498038021007487545647055721]},{"Coords":[7611358883569187056502001665501128526153865541559158134839099203014115911991,87617845479447207941483995353359860120852817257735643485765526341493112597509]}],"PaillierPKs":[{"N":25922769748919102678415192880711636156565612427571550685296776086119205445525743826557545692077634738129321690187868055737306626420419536394422682260657759329710259802294458956279773225258250955469954464209933873407784778802101265717840506851919529598154066919091078766953942869622551929743069097967501533345363150709912011028449270819442207860620552088412428865900112120786495620291333470644949767300948329241775121748888220588626655915013364614554467190860190736954650967874940702908395331234632114014125372505065096924932509595285205788545338407476139436404463823043865599023326570565049384032977060875483209339089},{"N":23930233287283899271771864413305422456138957780711273892670074191715648409585503033095084345383391541524625291548041741990557564183855401706042293717552023237439032182637019639795919249455653535670614575331737610284863144094845900714497635996654401300216924764570210541950557336240993007183309433063094227377624710274228010652758134777897718742178998545079447283838099902510469006366469099975469096355736757507201973304413688395278990349533350163833514531655073848517781662614171483003731680841330633223244205178982328422170273570503713081265847261211618499950287557687314846590616484106774575999250148317390509484773},{"N":23804125140052077689856128298352557083678652474445385365228110453726681237860799979845611556170894187976654278582576364089033396218674226546868809651353049956675922595541689542576794678062495339422204984765419389268325283682512000995221750412104207394441438666051694475950049774094896290106430636216894744335784327798634247450687264677393229214665686649911456587168142148024558282134024448427550922487022680890892554782651383972136386958126051377715096556862662265886688077689941967157694195467190297477735450118736949849327358586935699405848605265912107169200547464609552395233560924746135866463084686118233592906569},{"N":27732731445242071631661957657712700411367090291795241371771965432140171981887215839890743735562516245338158767440902124645306227526755834590210240211292920385793070069156192085968959067158127765511651425539136016999745924428061397793021945121990437538890398656832618417715425504589084090095239114803460787199036351739230987513003864153861252195944069425337294669643857426654756086277471320443733998616523518289821541295617435513033264977202437153989318832642208143170451837926277566396048774049270318848738844338850668187024045715008196311523744942555689097435377598835544336914580911633671909176827168167136470690349},{"N":24540078122494262833119917930091872139739129939617606686122284549157786865278292966087938309454800165081094474899057524752572006230843959997841521536274236615511587750039832014979332539924539915807860222967109230298738770371871063759834296194059907031260324597353713442284471130560805946122495294807423458083635025189319558646442212459161798625793784738344309603016513355951936699928410805609866016648244631951643648288242475041729105749202516848107495430809184564037582943457286768883109270231510808158554549441157152513493684930416951758705877335895250913277012541968048511163986915876606316087458297080987346429881},{"N":23068407873896187320610408658036992760323120237076281539139801143529656493030091268390954927616119732305210576479622679524747880246080257702939099128994719527894439722828526117361648236913823027514544862046712398251734066527697676237348724465158893599560473200351530224245041596340220963683429881340553208409699594299261181212989221107530971303522686320513564226387471374456547377291192484997988606654540899634665450162274963086331783789860908282085692296248300574631527561763641974772756130570734735297575564567681595756096492735284720794891113064512997620639494646662790341453069978107064092657029168133504185408209},{"N":23360724885676198523522179321150194474267520026708517257764444663025119039638464657158724624502663558960702469988070676415660798425916276572290617437202837750858738892140118363926690520956187802097449221385283612203760207950600195667994976400493623569930090999021596112553157677485561299069991215207522767873493631366488446241092099654975621689119086509041077742510323711222260189730828492291459421830791540197321337933505867430138627984859014648102694909985043765241359798051875756951108870386862501048751981261038842763679815348130953290890391440850806363449637432840586263665690832227799688631446932015796916844537},{"N":25572476038149983843824758627743773292157542015669155545898739136432359227667585235619146413408812705275735125477228881724887114180658812229689479785083051083069428146070988730518675361280497876215801249358736365876007532614766347833762716625529381645528767502376159614744663698030295284120589012492759402983796882103200388651743368106596836536656368370930363045639317610411594882976032564820311800297421945366798108347221120736308176815503106682839506833524058020959093518528060465861144447540812579976237229589574562145541453749754749768478003306870660214131556451734687719631047077200787163529663274266186702479657},{"N":22679491499676926565249058751269701914370165376325885490706178594236435587374452393672919867257890172146499232592163563478749644823548404207107209183759523050603597049541204457028947474998785130219644182203008088877544305999771879137962239304258371157231174473491797491114277983084811723764080082851754276992307408859865524067180300336894890064430698022388669278921501809909740064260359142339540812296913591956784925745003590749703099702370645409020780887758983568638652737043891478141095930983089074418014910987946825193073588506986312390146214478478314600989393866198945700334073322066709926152728868061176019551541},{"N":23556951187256713732039305973238937631620385080790804249029259279472926645248156172448686117325741554381537031072742207487366612992119859269685828207319515666102872111546619607137952974660084980511684952594879342586512197525409799350424247192892012163769784591542546626323584978204193899561072157767856334488337110957680579926475975853118319141371431419486620931003438350760541975587261961199260033262263106014958269750801811225868080849204705441859105664948039653986722714354940941410686784948916936213417318953574086609821961649007609305029496977916873440356977063491030736996785241653241262171162950673703965399497},{"N":25874692591276389940909836821933328634340387691760211719857424847912710687202655208899136151842265948895002254373718724704209721944297143062448179072459504026936041473424765480639475272190837266572978737262449980766383982513621598580661341958135147571122513631091491976191663115339463730624237942100977649124658328431032849468551008597071378488661492324861414296280692846039598797857140808360770338990664282941023358641770157837364612463858095463039043959476170224596463891235213200808423306885708639894810932553685021558027739945539621344374072593175483199343233185955959027063970833388545231587659014590298587532269},{"N":21093015027631740022404443614096248522776233243516651444497036871175728958780883068858760981924585432192986275662870128643941927265524238598903061299795143929360395711020210769824764384718922898979318706735662563638859312024117764087176816929100038836825165997745175858151391747552772916358596447916581236137266690055236206686429983418915105841208302705945838725058954761546083763560226985859597874827308926656876419352353487645531847757035757295720869824004015071252605178819856102760159009139713396577974830023684477215548955933062314225333947463154019890073099705030557644025494887348484646782031863159015194484417},{"N":25298229297396047246415163429032546137139715727559844391184017906947304850232141234045323209407471473714145852636924268416866274482603754141415609592221706725085407059971638122009913495964543366119323417218834638913881087432600102264473788528537095668778412431377856067113698729914757144153775835786313302871273438949909936263664301138604696985912220658568672102041006541952444982579070062275651333990266954050520365848194152044834016212084441028573044037025009772616765171118784908205140185837844772749992941537017860827787097838183799078426827486346760690086948873222139803967157701952297751113063507286886770253809},{"N":27142202438632787162126599492908508783692765215748557510315014134009044742375492012422395905792294364201376442258017321008269356413320158807932162865700040957744157446176162447390298999320446062496836729102114052332958615915307193716216287036998207324413342337908047902088094382893405585342830460716335897834006040665407645344104524772021574862180664953364488173834491400964015536206179143781066229852877159880337660767454184922616386524557470530917791514588890903382115919687896218697262329973216887300329083882938499296413225108475327673886217363092593458630101782913564451822536507792690041998191978031482893873661},{"N":24506900410165079432913879286738242981557799447704277709132563752281068885918764244597103897934251933625444124974453530023693766922128717584028552755128051187819589410024704161034785358235535327695240184593017832269373629062497324651346586921679971074785452914954524453931920025017233873766495332551435302696547239605953737313669053194482788679487077465271167890491044626060923037626210805459313170671202877996680415217025953459280403666974895608025476083146334864242075064839862857242870450430867849337473211116054259839281123892458791925377357496234454799948092884977174468592367921171996109259120511593665944142269},{"N":26694966767987840469949338865344547117483340362831650227215482575365406012636774021468648984974992022743149425563486792907591668251920735101399223711217247824036472514130615393737405150133409306326610912172081216216331513707092964488994949651842782342704418212963772590286378010081225253538245220740244206602153540135126863052186543426616293649543741875882042173380956119737322204906042367710990417544800462728321639324791151406955584010061660628304199783826293959912579926890912970052339895938137461119473504729752401310289221600181057106776643382986556174592325963163204522372078262520351770361427042538592078722253},{"N":28161406783438289776782541515550232234219338732182263528677255680862818571394539837092411279908340595856411618560352096707955778113841586575489526111758509944691006867155143609674220650793817498419172979829028602046249597147507621299153669762040424244341554256616377217119563525915851719009321686306763607672801085326365691030132510560260181669852932393003570340516931927914922146799899039434467722922041925474101320996856938035131446584298134298675299397155375412990353784006913691603024110559796744887732721945933471868150638226543773483734660294313186275340618342717882057017678734282256333631978096376709630195493},{"N":30290385531723706663194155723402482345164001328034021287910161482488063429892351584916277391109894294446801833020074687889362652138426091460224301803948089690115686705682426193759251182110547546779254274419781083851169949275087832187538168815749507922889270386625094587688358817642053715412200458038741309360104964334706289126542952674791148655002683650712544232003067953586569445443104249283623297733191839471659254940888571771772980381177972566220724293577306168494057111878161156955456998298372496716136324267059071403030493623531599851487444134766104137251811774500492630476212318493040236485031236879687941684761},{"N":21891762840438596060416034930044842446937758373617708235288562429502315391645647044939378215035677465574183685957522821315454029977571728750605988329881847569313802549118091978526315133726370633285214423147938264418314863217805659876561184725718735591303337902948467582966199323804114988231963307083517180657041313131586070203747291724798899561367507615511932716092324516747320587928666160741969956121773346301706809405054989477031949248189136343469258532041255092588255241987397760849320759799542054627513230744643622791455964220513319415609245199516100422991698341556744298439022451385568791478794837569530013904689},{"N":25360934335416714794999313991057897528923718232366653339706494176825638906694689891746545886915964196582662458688535283322287088397853865709093712398485753916163063777301385991907720781358632265326870516346689492128442283774600103789825609570294923480202759046857115137927714980847316960609776972337028789163184648676367675625026306027140091761009104192786329465543720196130052658782412428125321357130192023653185727111578488774341366834046035305712205910649341950409228079277410881842097288924692206421126356254520404943323384573694119449632324221088061482676921038116252201661916622983158849603411299895152156469481}],"ECDSAPub":{"Coords":[92492306118178589821640584737240636977398594678247616965910942704932180187323,27954057508764275913470910100133573369328128015811591924683199269013496685879]}} \ No newline at end of file diff --git a/test/_ecdsa_fixtures/keygen_data_16.json b/test/_ecdsa_fixtures/keygen_data_16.json new file mode 100644 index 00000000..0c03a687 --- /dev/null +++ b/test/_ecdsa_fixtures/keygen_data_16.json @@ -0,0 +1 @@ +{"PaillierSK":{"N":28161406783438289776782541515550232234219338732182263528677255680862818571394539837092411279908340595856411618560352096707955778113841586575489526111758509944691006867155143609674220650793817498419172979829028602046249597147507621299153669762040424244341554256616377217119563525915851719009321686306763607672801085326365691030132510560260181669852932393003570340516931927914922146799899039434467722922041925474101320996856938035131446584298134298675299397155375412990353784006913691603024110559796744887732721945933471868150638226543773483734660294313186275340618342717882057017678734282256333631978096376709630195493,"LambdaN":14080703391719144888391270757775116117109669366091131764338627840431409285697269918546205639954170297928205809280176048353977889056920793287744763055879254972345503433577571804837110325396908749209586489914514301023124798573753810649576834881020212122170777128308188608559781762957925859504660843153381803836232469296870102057294666795757897601277281745859883643025151511641434597782651694343303915206991451606118037904082808616659478582872784574162747857512040132373201458220965841931887934622687101910213013013190197073241641749317854299275685784608327734046731585020591921982128402275131977763464148783476243911014,"PhiN":28161406783438289776782541515550232234219338732182263528677255680862818571394539837092411279908340595856411618560352096707955778113841586575489526111758509944691006867155143609674220650793817498419172979829028602046249597147507621299153669762040424244341554256616377217119563525915851719009321686306763607672464938593740204114589333591515795202554563491719767286050303023282869195565303388686607830413982903212236075808165617233318957165745569148325495715024080264746402916441931683863775869245374203820426026026380394146483283498635708598551371569216655468093463170041183843964256804550263955526928297566952487822028},"NTildei":25673210614761004254141737312053451635018146154378993341101985326929566270344015265597835170941666913606119762699769929117810862190840467973932188558749547474174367822508601158829928161219529997833862214002106486508027112865708012732033692783629855485545330232068552007350877531730729790772847199443436084419382562932662568511421420283558235026303217907581598166628555941188586096538364407553738314729036218493332920854764055946289816665260688813327844579390598566768671973314358968068459214729157676432241630688442073088681756498136814491310636028421098965714509622937097403466307515165856202257786336739101389349089,"H1i":11992304082547451264970842283976418853821301172975086658682116387543359417074268643442593212371361490968819128789238354995117145993279593426471336648259583293294202599078859260437992548184464009386152763827946804967424362206055435693041324410893236957405711025923054702040161696386453571055246924713260145964584750230359074777621444549946362450468684233332414284037283955916761049858000878784786268023500095161975906495439332741618288811384519280375489794382891880648564800750663555801045203854227681083222146920912455217541211811955477767635787030014152643158711960638325867606918508708678622347924499914937535267162,"H2i":18221138784555811053296911040444811422299569221370698341523745856400091281377839778678778328149110548534138934160836481393838346908432982920562116626677959686450236292050295531261923474882738697393510842972966810110218027601675376030586402861098487543863740705626110087204717386977952136809165092530095562928623301371629208844732733664526090007002304626939446606391205626126192870615394522174649688440887870385705569710809581575204639778805466412903927058799148697158251622260213645585723159916754663707237605872275846686566820885362722073881904277317597403167380835907876296870877478221646920284310430371934404822311,"Alpha":12729480434100385003486120189380464464368914506160717533174707708617896058043344216966394691352291664569500338910373884037086128584678764290991925435550499609003366477386555553049776980226661137498138880756510617706047001754557828271987958958342142409911533882761286989941285853701281385885169468795224028180911945711795276858161393201491682151613970864387850422254506979296056127468117602960367952008505437010561049504850468875927041206890681393059841619838892354583268372414244977397363327554305250016785856276640338300846319618208893872132387304435477623731519418849395786293412229336645854492560288840609924926560,"Beta":213758724258113430587300239375765875956150774792096370623768552073219166434415898049008983237456158246691701253149821252901679120750611161643859605294384924617276641086693179173360601241232277346377159133788463466861133860298262491327077160872999488538657610007146106749274402454646846609334357669015152422129125679414061724554085866727823044277425831742891162019067536270251765887696263369693188014821742696220119813495432501404041965621224801957717262003637993194207132268230875181246965343044578212374721267639878520008485750276782452824321568644297245839660628437795902643071549499285523328658194098609756867251,"P":88081646641529665507273547243017384197410890121994817563429185762123708014685096063175630716484581957404591914071282207755726851742891373666926865496425437005171452685397811318352540089453959928369498492499298909424673583043428849994278631386845184001542491526482042860659502780672409276965945102930379736733,"Q":72867650622054582559320982224864873498303856390840003936080663086240388836473979685393705493347490406743779809077125800580452339652458373453407196657156144776119356303968376896662530622723911556256463787815161839602213866438056090442125836706122799161726702093210767923379893230379028861129954259057328860233,"Xi":17061564512938100789423169251557695332295154798378275138106520071484680978865,"ShareID":99910913777216787121500121711080713911605201308487494263101624819470958719090,"Ks":[99910913777216787121500121711080713911605201308487494263101624819470958719074,99910913777216787121500121711080713911605201308487494263101624819470958719075,99910913777216787121500121711080713911605201308487494263101624819470958719076,99910913777216787121500121711080713911605201308487494263101624819470958719077,99910913777216787121500121711080713911605201308487494263101624819470958719078,99910913777216787121500121711080713911605201308487494263101624819470958719079,99910913777216787121500121711080713911605201308487494263101624819470958719080,99910913777216787121500121711080713911605201308487494263101624819470958719081,99910913777216787121500121711080713911605201308487494263101624819470958719082,99910913777216787121500121711080713911605201308487494263101624819470958719083,99910913777216787121500121711080713911605201308487494263101624819470958719084,99910913777216787121500121711080713911605201308487494263101624819470958719085,99910913777216787121500121711080713911605201308487494263101624819470958719086,99910913777216787121500121711080713911605201308487494263101624819470958719087,99910913777216787121500121711080713911605201308487494263101624819470958719088,99910913777216787121500121711080713911605201308487494263101624819470958719089,99910913777216787121500121711080713911605201308487494263101624819470958719090,99910913777216787121500121711080713911605201308487494263101624819470958719091,99910913777216787121500121711080713911605201308487494263101624819470958719092,99910913777216787121500121711080713911605201308487494263101624819470958719093],"NTildej":[20539613942852364097890357541124859329931817468396278432713468646303963073659662742703665137736867247354367523800071318544570641421320510992705137876681425752810096966415479528824625129989063402576946505816887222102561441464103605308386975248012283762854115939987945603503283072741824666735245204091384515192454349252950007899626081034649919068642018312817079235168086885705851677572363277983076857313399016624874649811334825694862350059490166759704819411086564625186038339099281295128259092469609539775245598320922394808913338827772001777479207381548603315272620456484970681705115865233047669675602308688791376160589,19461028678249357721701139019984545699598216253588699892259672060166427273458875608319855785678884811755179389274380053495578644060470229307987007292965327985966772681212738091909180148035785695413643708212165777295662698493311553457174395686873169155288384255670661532430410131045712913078128214239252258473814281283319061613409102410606683119900924722782015902970301519339718368508022893331969649513655635811522767629123667744907556474126774472529158147258343482417188228144974952598132795041139358631852141986745214674779692377899411672630850213748161088638857089501019216868292821676374914063004957409393293909513,23815206664659393600414832732918591362081086959256855451108811883313935088830793690110550688160373127903180149093000695761674277348327575728255258492470452704258920461298225437641154249481888087192237143947805411796310656512191138629555279666557122333244803756577286887501632314162770617970064401783626962319950524158923845138939649762251756759762119774585338772559055859463599094869423262313306255644927649977403492926253217608523813644206820059309357940964633363130901166057002430269910921882664166860038861390305316020579398429144038386189480114288127704265879389663380565983482028227028306457603727009698486364281,24531363009049563762536664273685630249930678743601473345646756718446749360580428942513295608401046098557387011967587876621178423418085640157221932880387840241062539585907115950101921176093340357598786734576629107604766098059509560466283874031181440387973563913507733219768477775440248994272649062713092103053254889978195382189063452107439308150731662099755008823588080977928436274879799764825887538020606485093127463680041134931480024720440536560752357773730443722294290727915022250638670491342013254556128005158924861347226548459626859027825687870031912255326425000561908947972742109607669897905187712585858898757609,25485947141960036800495601740358196336268148055632283852581334267632567089581351729697672659186150817483946028874699734841543360085445274610946793774678284845142698994270979141586640525566502581978495871744643885460820923876472270768798335817566781711314773489485670479771252073613546268231833675772584402239718946768734191504723089294480532048176604551680713541748910822012363078082926628834536634899606309021451196325472880525430322895659546741570135136047631868000597393506058143850364801619503318165686086392731222189995494225633540472226098357551602534472541794408218767265775850366289511546336446350346021282237,28927199961592509462716713052933904239681693743133323458100757563361525410670677174848159248824087482997906403441479071298957717300803186875289912194352025314864665854179681659546207985006650252942140268140510157106320849846175665072784539119695315757729095462689260495430463870222739869312073694346079553731438032339737072477343055235278557275309616493517920166164080693605271556685355062728635594753076381152709174590915306592547837200121302421882042327338955791916538647734045471143845013412592155994390976714634271247514800401724247381959070976404354024140134277339724455784411154537706347451440209596089260579033,23535119694477523772171748044630208131923028017288499693412795663706886468394056769073862998142660508474676105711590469240299300182072142961838102383606369450702330959729879893242049940029310408964084662077585876233411878169942718467081776763994846585950049650660912827541883992039288017630464390592382481783566823924532043610685633953209522603678841504652207254189077646669746333277037092923165111872444873598439940966325805716105630151638779643981500665152639984434504817034412086671254173379166038071662889121653550757613052820175939040916661555723756176613161036717523938816196299007092417098079561970714605061629,25950783447263038071689830748627856944354421735888733670277679971199180982562433131778324823115329151828330351648021612294094370722267669972986008148650808031918722892417970047773133521052009921040352676366121022268583455702531977371124075420219730460605780729481918672698487964603151661149289116143779941433746038933525309985350586367303720987487112290090195247099032317451409521767630753382551078895196505751734814139673689437231496521554705226938471456297964527299627857211400740652357956604961830754401147898467475649318148547949522809325493238323065337997986089837089904293908389128632840557033917922339991780941,18687318215344566555182740902454336428592486945614858718824661784376438207943593936740995084200358460316665071770681463630810552799361606949595415859491617650913620153502889285378972038135570359724693463761135116433672709408902151793979112715679738392883186006369274528906256519536716049908878346476950103274343269649895419042195937774381514132210454482820166758270346958078142742840173830940449171621914508101385104081796180941351697633772994457709351610367195330318869580666697900958479010130985251846923421963647318437209519428820003347978947799013079168765159404172743072632243706939700207639779907975142224264481,23171083837957860801722218699383337900446240030786871268841926233540016534306722256418697981846104677203759841627977766724259030420015851980511088229043403050763668171722648141766116654882525867416891436685059276174192868946692072206824573955678962077288068058032958478942750338128252470165933443869447212456023356245726416751721989152798706366691818486325734110680894776063318626260722657549472271184224308146689662638536101291469177898475337027531732897213355102104990685266062044811809193138366772764276162181116512200063463469172637189164324496242489479899844513951546392297220122152709400797483802836017803985829,31343857270714098359641269819793471247744609345771779520849062499842222751853736635128030263011267623933026775894009843057499037409921342064326054830123558338476304900840753732976691522721379417037190976719048367738172877422341695489954487825668390415147795382659776979019893183466662138357984500601883268994989224933833342232607751640920642550766835871191739404896219865225614116435580799461951708239551693029017567595268404121330207564314786956323833427106966279493560190075571199071036639702485305576334075428484139050116713328535867597124971991546934922511844853709001583656359284723717084806850145785405536911177,21157487427733991932564510362138492162446873104287756897983482468142107066461483198236006898398559574298806811271053872211924774119515269456039458266616445024300383802406544466004007569246261860103312006457776588799344222340569710165666518367783547810282003032927364478322210948885423703591814633243286070072754280297773344097615910071723846039979528910869815670975142743376293197136856592859188733532786144697373533341877747464753616005694543102759948736736802569257325101204596297349394258616025918915521692968786299735438817719576226325356937526633071323693338940757362235570825853130085312301448111119042363796113,20871071186633559430638470998115518791893553646420368867902204568431630269565952322291766136370093127894084798814242475456617969102595313205728405129168253735048454253508700456761223106599134617920774227174015124829476988377890165462875183814841087993485125686632410376362585538078467534668954228084080919739417042353928509644795709201564083148094079836306167650314513450129297783489119015593642581024870311297891618816623633162063381775243950740681581620150958717466968747843706102214690157071025611480716612116918336154774385432247274600064909320680551901771492165221773721500541614228617829117370166464409020423677,27392140202372139560911530190722295626016991167776777076251374167016701252229100335980281077736021393527993281083564981442696373714433732500818431355034758384480955155409564373832745499649881975977124862697809360957420580753883129965594447943274206109113518479198329538838000642865155652137973709624008263285324174285285129803357738290385065522262059795474318914719823768887144641758090777562619592046692917101170170722723905514971631800061092086777420826999668590868568525034863406950714560799453233548147404988580929389926995856613912328981176466707497680180241272497358147647189027922268738449537259460751070153621,27430458285560064975603737623690566617914765114564307656159371148918349993794669623672608540855772729568670170546349850367039352526804750358257162362490778729908291097260480430890476823722553654389178498566668573496227008913481934125881578164602723285712928871252207939941804689355173665470036039114037118963971589320342018774107583274314158608546842149328506685304690959566263296291871998398637364399822435359987280203416832697098234360106966146607816540746285266790106830402077656904149244001383199485864465648143588026246539864484902228828598281873311925831114015086450712030764672165915248196209070047454495085169,20958576649034914977467969756965874238364659071947031154211972997487243461262394795340258789930977809611131615831278870909123144191655991893039673506539165135637011485008482874021240555941833074286915507794874804218274011487390148860550531668300157069443584231888571925159473970195937554740938933226402208131160317818926784959057391389980505131685522579677264162724011263439981256344785140426649255485125637348357522582511064347878764724812085894898146080695383734063354384186594813474135513405234523117338489484424618032520881618202129068318264606277435174234229102947510033247339629069254901430086639327996737230861,25673210614761004254141737312053451635018146154378993341101985326929566270344015265597835170941666913606119762699769929117810862190840467973932188558749547474174367822508601158829928161219529997833862214002106486508027112865708012732033692783629855485545330232068552007350877531730729790772847199443436084419382562932662568511421420283558235026303217907581598166628555941188586096538364407553738314729036218493332920854764055946289816665260688813327844579390598566768671973314358968068459214729157676432241630688442073088681756498136814491310636028421098965714509622937097403466307515165856202257786336739101389349089,27062431131775909264962122516003720577621307700606752850978674545503762322327045712593154396229756047740198870458644425173406714147601486563284216353367017457813364860861671576291918230182938220436949095109018225648486931358793025228571750572403143070647269508389021099989559676856968002395615757641794675119572488971947338527037552287756390904188517823120698354616567162661395526975254448758091053074808436661809101512025437321837959528689272191238705432334775200965152419124620293521962173467865862080429867958898040527206234108561471429991355210673373595922083144022410446012714221026174220695995286555692560595981,26101397013404440939950108603288565551073409553356897393691328641679505760230621741096317929709636865532238670826796537369580597665138924272200816037026280780915781305836081579178356868109017075793286763556497902869947712856535743263321959264839901002581734771178344662509473227839268090064000382806059250315977679226653239225555007655990623485545590336008766750972486014525144801720879444739045959169483687885427725508164188831961197284042818573448808100923870021600896976125650269597381009562192855793477760166114366163011349461311146903814241124631772470784181050979028948750586113514587005436500903242591757553293,22437602225740742482465534898349205983133213895660550238212001804732032977697798637757435728694311659299624886491819969612531644822478331097020027346346025174540910579800256280214031292073085792970245723432769912206355626120327772649905875827091190500315669126429992547075064736037570537735332469814000462556933603719315364923773085086614780916637137068518726889173784282955430621992569759561719528189938429235007732504425905045067985337249988673084527372002559031400047880307427208848753891291386460253720313523072063965808016289774609282102972264056704286287440985034888143293816594327214769326166521224390393446693],"H1j":[16370062914568124684409954423220013634799944354368183091925443712820668316759795091290952642141219645055533606292548565759917746455430426634828957426644826424037530474618159463204943752577732484149675671820306363344833458247384057865310742915406677379586789735200748327711872632191061145184949312294612467345847214916930759229195852858849386686352293049987465485866498220082468131280135383612600619493426252446949294373638968518891137429993551161437309269629260378927918725566711632082553316166822070110359114229533322390061282040482480263995079579444943917107997110057038662405191417861817663789094790962966996587522,5792666313208572350705907594949414590804636531753541567087068453778543363077542142305947911768781865374122070750607847515026168979710170113788718287465368491981654823945993941924700096393523941715256095048825025361038086570514643251828085846380954791657627403414038681940866434304045104130214177360598208974353162505514170835103706979081795485247158115653501838694614859268884296606546104394637012764653804556264770973741677326601115655746125293204398034469241183574629519235451142797709676366285591723984602961129858687877266469708766607187000988412118886394000517917001485137799190522482532376333362935442751367745,14510201356793997359892744405553071944121896518459738320470368478827891282273167297002903311912769777071155241288755372185351193850631471716718530488323104261827697027757019895835360274243188719367049075501436153398857359555924247334095665350350441220453460409146684994664351725204034521761578947269005519140498383255606322844603919000682223940913285551513356600061526959181206093504072618536296265435830192715190515397064435874311583709516596584871136822289753837472532490128304199643440789002058080030111113389709287097531544417461853059085059819958060220257218705882557929843952675556987949500595639655528439052202,21994027187251658420706956116678134303619268245311594874227984400819404446053485122189884678892175444688722527594580466254690437593853064923544979570444911946308283663229116693350631331935027065689358169246815279257122823014594309629197723508317910829246255814111959552337648906237682616732913305786178221005434606679461852547394872592127050442856550471832240167936976142756988960345619830477159914332536955389792251800932867389016006568741180137556936582683389834385412181167798283357296952856933963222988284608097870458140102834156304710781157917296313315513842893014212063887070100364867105131178923785373561146050,9913834538682656788610829579771569556624609911472542281771864528920206652057360227595914694025069327892774241543292898072673087864732558768588752951687639831868499912733997907550450742144719953844448973554109420086839278177283587750852958353526057789017170152122423018814264172807655239353760715885145548388992476483731471865364270428702324445078126354834888878640191523880163270112743069852403951565444480363239177556818094412397417215136415082364220806171351930690164376890892251369372868624028034980680685551131786332553623705883769998271596791035214982761974622986462384695349153129828098712177799482890430520965,15464554656029222110560140639422624868539470020281691165975400448606613120973644407534365935510334228227263162749065335291017684520353168923100727746351715681760916446206803485743114757577242723665933043744987644589191843035807511863595701170012104449542518101585729174897996392297770818633483533801844500665798250501473521227123975005972911918718226524366806206633841675388137041998857549215313632375036761617534744890091542919972307048750757690677067439820416806817051344016166652866968067639055986253789416713411110543055264622333767216550525033482750914452894139691102713436731472281130988207399023815239852528906,12865788614422531768878171769038267076266208200249164027644212721909963715015912538682157638127903293282023380796412378159235431043017021949518573892381565899437599164703723050587964116914107635838030249942901605297513982608974593500166572552953195544515492725593747884602852061628830280449190167844572097543184555448060083835007200101317266753106995526429573085540857281097156159258319440414895242242967023265742835942344738184941128584859242462621792495405423196954908356769683815889035326257091875874458718611430785903143039161526479973858541524126951528796262613552089943663340076548393182371918642954593889432834,22194516202811321146792934079465991238594712937226367504517257988113211333368349800836879103947252405610400726941861867633710543721876626238467090611506859331575128297406631557631820626534381998686705168632059305910804423292984195597625141279765512951234238593649775486094326905655122386938572411401132183960062730500896105597665702000968846572795357957098192758080717128908256523579293163137417423771381528097786100281383788052729825837521137512379280310081930804124457815661946839040621474089357381345723789618079958299474682840114875558952249988571746058484000722421698440994062460208554903525444210802321182968014,2022329329707369117437055740094404969047484980501833952214571687130852032499620508208708908589247080600189902502365407836277381678968110704345539053376355432754797822267575827372488857681103447936055038802753292113151984972961755143427625893918328299356797405969999266508287378495280713821635381697950988327467894890827305051792226857027384943282520470216088404776455333696749084292781033264737672933515625823807581567568754027253581653106384383593181057349330506068884659072076739226363616897242406137010778123983315619151551375977509919335513557274798510437948502408760645678633359245877721858614575061700591393721,21638702445456858422878500352234793329413106731788942261751796025224145517964611169394617788434763506002565806620170893339110273126875286455095506459298086020278318872581385674653253080383128797980439557511752718258375238388481802546638936192461482797150514683008473213407715728694302414916863995043974867827876036585791719812271742103323384468954527534596036617313432433874380308883492321501736879178345427074046787174556058119038049586737477628511165980047288251497278209275581664775606335268904384984155864116270266473616061700061527150495070719210903471680082400487754898061609554671248760480063619759950744280907,20932768206097680299943959313782719928339866139959731166252002876096405653871733170637914957728294590217455322823662941811142831487382716004980657707514358763150029924714520812685697751484102120909926147024006189544048800446501267477163792293393919588659127430522309503845365000611784195390022621092266420671288509706282186373855655358090019051530324622779193478505342408854462043136412488215465955955421082850282626458587043647758494935495915329050933653468179762936320308005669155322055934931071589853638981754901315764484414249149121368560265856082417024956730272011998498550756243974623835494966366962683389714964,1365816667585940330490355905311774458514715320376130020996515573937571923987574784307504874484515899610747050162880466334946062918938639620242137371098595406424267003818882220942016240927776918797542668204898851284066695289242978919397682088055368818116198595348273129318762376760634794532531433638073562846988038755248023571028829475051882101071203979111269507596248527906600986677728810751499828436067766182628039345309355341295172437424660504415028913205507139100147921515616240146193076677157859750716375066201587358526136840334151066553547201088947345861316322897488659331106732575557394540428972305438213375814,5703448175361065536885380258834894924349694750000788978424055908887487214267289314410654116737467233333514153490994654420800717947051017245903088635547080581089891657444714373263301759995815635072257679749046151543038146531810310826817366207696928190231298874979984114964348460891792295427444943206125809938612729939665048974349693961742238426880015130297226114935093282566300228257419316454068258492582819117310017835605391570376283517758701794125467889060184214275911038527696714000045849219024045243597506828846590195831908281658454892131533791810760325400211405258812142759529523572815227489710851557846638137542,6412242406353564485058502679404605624009190790593030266854505291800626778702270387175472290319448965303250433574173375628339895100997329474893279692868549940279796264731093585208695625011062617868491258157215447275957107991387222489580499373804335870682739788296835432969262878909434810429803264643527538555130662379672012787064972208117475596665593916782896686056579449802576468324812730306559649834202797329883549294599723290402017221639617907711497472325019619452322282704828796586508386419927496666562295856731151167316262475184222145101211618002798513055006067228431048839763646095282531119806559583105533794495,12506213831497706601305625665856619892819919408470741644330076368184175310515183251146177621238406207206410185643656979107225155831507800032694528257147716038515158570256044209419514879851010106278924359714862316802415670557334433034976750101928783991744583819411313589306343712690219032368416678985323530251239318661396466801994308940886752046080901718450406046375904389766893043894196541576969928137946704159382893563356338387889137855413730990126192021766856444171515497507122402917749807424621383187173538906785892654668489198127757882153223185090960714890345630801099413698632285321494907662894187137142803150791,4340320683992731212484211057800765907410470847269768304639037529290512671362801376775768288042129836088810539204858832843247178308000345604701431226310915807542068901686097542648829915466491213307097734259829414895234796525272600474326857346693882386640793824277606043756669695477090601330450743232413209505539149906338741119182508496705355703793044044384724643256986023764031438551900073624644692938223394706241422593949897781383635695299729171084301185179708550600098470031089086344919627503113655735768701217637285566867914251954499504690075652022468818725559007318841314414541437592229352428286215595483845053638,11992304082547451264970842283976418853821301172975086658682116387543359417074268643442593212371361490968819128789238354995117145993279593426471336648259583293294202599078859260437992548184464009386152763827946804967424362206055435693041324410893236957405711025923054702040161696386453571055246924713260145964584750230359074777621444549946362450468684233332414284037283955916761049858000878784786268023500095161975906495439332741618288811384519280375489794382891880648564800750663555801045203854227681083222146920912455217541211811955477767635787030014152643158711960638325867606918508708678622347924499914937535267162,14695333877946105505101457937623624377562698430478247685331048607650568913937201633971254630714736577175024535322415669442798271475956496536083972430246897654017678266490639701809689918981250971730052435032797344400248226649579239038593902835536123498617918666329121083751772876090103853533035181736615043011673643017303605152279678650202512062770466963460251942403425462061196179491356440328364636048438335959347603428717042954470887883300891927932651483741068303515425618933688194621659816079976510221005329843899476003615861655015952079393164902282608831513778303062716347528913475870793908798463564832083549613643,6361624891550612817090909815430156259585522002511378700573226127309539860650523892977168943678195716824260472829831132024282728135758912178943090813161584286046605117495775878170654691942858452263763077967647297167266507685944611403131069163214134338169098006751105941940463654618427873599267528041887836331948305951890335742121311832653316741398094161561749334956600724220433324620401615490879450816097431926849306846384679126203940987154375373597650036103822699248044107851648286585837187416880739896147553285981829664828869063480707437325000260106329487862878699057790666160151383639198420965781777521408308842299,14948927140088320458060089936345715166494298631495857212773926944790409869483957673185876995292328343640197788589621807184518806705821872810447516194927678801617268846361533345460325613772855110322242304569109406957894646727384216069315325052819333705539766154972989576988248927288284161530384846682668538198851543196833452065614949748530253693700328342501577900059842225778082026779632761099626760985225309957646536118173500439351182747667021029407125807666947346322131872894915154624415940708414296769044070685030466034270063053482191494419465005898644603408406165778424189251953592599788015054586521957253320449350],"H2j":[9653640790649475435050720061635061544335995170813227062007808546473167610366804040613054457009646767723479128021709179513573358845884462519136809844401815066012655857973373223748942767836422506840658738556503260986697250346171921063441485400421533124068250604530993514803166454504801884882297625678932746326066096923436475087338628767636689481829832307623108408425959669915171224014581673426602770656342925462023157550194457295116217893440581116140543598050947318929500123378985275492765280831578803707538206440354119287576298034238031692982504012470196898579719660373199491817717767711160029710911173725338539566802,3578111860663702772408903345930659472256129868015762875031051677614699117364424442270785915866444756532836287879751640816575659073006676007210405202315496945346450727441553016187592354415793891110773645408147683476571812485850037389853330648238106038729525075512542830213816094853869971661719959033499816133612736102442725651388405183329714325258711655979055386253406319598230253658818466953001815116530962213661362799968355793928849708876651937113231862631691372187008559216884922263381652908899796744393080985272287681952842592674663712445064149288160957033524932550150413325097150870149209345404214256294282382085,2562656890570835296352376205216590519360952576353253013086344012422175466058176642832419040937235521572328705583208834436813588375562745525224328564354560731400723267162764903064018742843839822445601315505274421672289602485557719646504320106522113645676636456687468751723898215955665240524139836668877382766583475339565598073690853848639545227831264115164596396262772422415214665834769274554577301336288865874066248890243346947740610544045667761548206600923673948174739356732295677551749947395385332556227074205668024351973201205328576603362256016900712683688241615565934460363012498930253514800348031700419220337084,22298685304249156715841839507145325522077048988910268345524279200863227356693376151033928569980263444962701165900514081299580440300365488019578288962534096517468902687907593109404000193096117803450936780948162440311950526862133749440555125530434273281017640257175046682563772712146188162909037424635371282116160809281350332585723737917537784267577381007869736550494661878733387948458251550312048040279754696568539248453484809390032249968377837207868808482658171733689439009562188880777607125039187467565549644537971596666666932158369857160883674108786200103009448463903055431989786220430290067137368612432640074310237,5879475324785385886080118453628099122983640585548725925692818787221734315336181255707999432375105366554548265736590343628955580077952532008988837072008731794155978542038914506112861039350525606157951017828660604272526605818549217659336563240062224484914310161520768881507503977620229908361541865095980430141394883457555144123820008061398004875781145432780438239985999952863196781468403423593755390719871396312035325131303835880979744451815683310530516197085535308856850866798018523735074120787646575912319226234213646284739550604897450763442470406797690674949855848424274918433854009972115369882751833585035329242761,18385446607341413929216752317617998458160849115285197433981133872531647462267817752048089105851349541660795002685652456000086108157981979426453705134803682299691630928200421847304354380350114763235863451959398215394354125874494984531309790405988904217354164073819568789120760731377280912128364362051769093741704293517942028826498663326655241508795914202031051398724638536523567800437872676476082333745719105291491676453403521845621182329449421075607837301738332926110019535833222421409565228043580701032497151738816862657210572819375918881851411438625526045192015060739626198734346744421593858157488507552447503219157,1543023308301318791291636723263661645234407352972693347930324541592073282303070472660827743672362126204249434834670307886593868303926045601951702434485524524299146190187978789568968092026789881246345813079894138764374868096047892517784410005345559357208978859029831295378789933334638460830863012154730679683049737545160281582305039520027158141403805442275432519516975114987511502563484403828987844187725357101956491714139410763551382100998178318863295224089354110436171289236674317711473441156004575613857935802947903186710273135122934512388821226072049093290647716152026391828419205457729234939199662889356527012444,19612969155814925927900736991694631498815639143900750081709470615537990112217002271570654324774711607889679093067885009086620212727925361021546388555967618760690930383917718167829905900473725102007606380323545403188303409627969907029774876076466652636827981089598601596821629485556381455948439528301393466043329774616323471054547330305463639720319551756652789237846520745512886328152641158526571443916940675394167134193466655448590323552123565655514390433855054114283235652222186673800138041449545987929749641868001910765212175435331820335256408276886037716378072029444719891008048297796893611911457701948988529229282,16728597479991680407332164223276251930971882378040601546182090035388885277790620642130984559023085396113670088325023048100279567479347085329073035696608554975777409036805727779421519384442869313567486101701856985975948368091166211269762554257345698853374624187196304439193724792774291722910128170261256918581442838390388813651239625403911503915460141004046718650178671549506593787333200145941149923809156438433492770338609398675185696331933468246886804722117355530728325631706711888199439210221397335620762682713255422110226515677047306270190770133307509623731091673964502293431264279055367772707113499782043802219072,6959317283624626561280838810011851848606573383456333866356771642710009365943896928686358713606049305764133589953562485262421030190625379899341516940088176438653144375343629199857524649360799157617467464667207079997090732685762910728717721600193091207478294785009859545546272657408615665578978698966309579302786158306046780048259033960048367018506262121833776982527433736628482989970739839626561164331780819203300647377931749431379962789021848504353274218995997754499900534324222498419599756583548358913120017762065234354717544865856293340540081744252368993926137398125931373959455585431506453093937785431907339954440,11707820384786665143909181917722140695066077204138675859555940823963085499198625584153264077484611920625749300043796981737297557284495008476240804003977980903028035986014301427047695461308987163082644181568819427026377861293089760745032220979974314071873695748444473344481739404234865330820136242966321355292830007655295383627072182012764804101331409332152687101319613845603099019594628684448783718018158413013589965095889558760502141979036830513073469713570347578185733951700672935586145889495063730457422516713768592535269075934288536062686021973569079600458124449475763651523966025703378628943004868525425132768470,12680113365919882057574106113475868522128522384382601197321116786250024227710942753687346378669117549887826210207932325610070970266526443555090342822407043741408930676918514338947859254583933603158241276952467805479024344654828575004834480980171788527657050724406198542408746742354531228386476751247072501617975174749412587537766151828306153888252035411082379552917399551115964687725743020641384211728557413837203373250893065347048255589312756928959773947595990023044227966600250595372063312552514516053386563033360883348059069724261103859193470298590631028566611086928803669676829225666250863192855787196720603673760,9019657743968669607069997647539968262488442864840563257526073127843215521457164945521996034009113740811008633126128201485876365964359243077677187550395794512954090076458031575481109943534530172796807658845833964496790520042423061347000207701119849250007073432625973802817311058171823571086584900654526615124913824393095137876668486739795620319593113487319306758076868523633806281732675535191877729151172494277333403640038019691517232275137009983348569240826245496914996509643617684093222096189728055561573909735610063401084000594789204303691795045753669664876756897469727730211469836756344045393712182476806348262481,509727692658127329234819348282810282823358222955712460979035976368760532139665502509369544837059902335508770138210475703837249689840377266421270410968940058538125244069674567645496962345390684467242600183265156396927471901904730403435725549974213712745153254130090979413745442250230122176329142735628394058559735078808655502950813887104168441824680204081093532561399756958380811786995754253778833219233414597390819387529718886819478101169481249247654168746478268826094117295037052091370216680279456693786586815595643437522530315484348520350527079378100131478937805285900851443697897872168020710497135465069780807687,3842294189873253197555038084451026657880884971357471477404186912118522652991181539287485996470843289095459960588932515934990566949413638625169611068786524327230092661471599333492933504858312443510340452825109814219748343465626968500133039743956522352452046474898271016421645025612565409422475581907506677274527441400119913285024497410632467771786023570373229380492185234340140113773065511943229164821322784643171443642045254567266530741214826934397811463635644370547054062567012016231228876473774669826378368361454200858389911185989849447377758286974943747417740672897265471383352127822433439855380640722238771424561,12605457156020973444763168611522695283402376793806466187139735133742095649198553225011255516233464381926302993187553632508703365300132776800901755737316341235931477791227746456204649162573568121476427289406145613748980339685673661511024577823438911510307584137593479079190723698666793670318162798116104492476114229973922338166221669934104784402698512349426984473431614385866651807327515058966935011035923319124790759086336194395000632944700277782112868323483780168144642250558671981757792078139349701070563555668082796938131863328410412160150471825619049694173807371104601644825755844313657731729068891163705563867555,18221138784555811053296911040444811422299569221370698341523745856400091281377839778678778328149110548534138934160836481393838346908432982920562116626677959686450236292050295531261923474882738697393510842972966810110218027601675376030586402861098487543863740705626110087204717386977952136809165092530095562928623301371629208844732733664526090007002304626939446606391205626126192870615394522174649688440887870385705569710809581575204639778805466412903927058799148697158251622260213645585723159916754663707237605872275846686566820885362722073881904277317597403167380835907876296870877478221646920284310430371934404822311,12694464409184116198175216134705674117698495589897734763290223249700439697747213221960704240817308024376618649511257185410755720163743943692791263666036558979570909072667619923266653682384882259644954119285287063471541002032435823410204495631358202104734018269537402171761572193134509812396214919229814690930600798504895496564687656801956575973479011431776352638782289114699743527186781919502658003154674450714069197242726393985114420810547684173494018605147976810102913734546162705259030658206284298418521349062777115509219489672039075093329236647292016824670535351144784388483525751068225542810044999850751665224074,4201765615355271720665237538919680402664127861292891404309962354268106831635826650331041297039291644925592311983403700464576600435518882156854904159089879201301912105368413055078865795374091914623189759593456721300785707753873135853357294442043908826331857106210726005526370024055346666586491341046296314798619327898858072624823009991437876242325624019938022318176060332738994176297193724805935694309014605422020909137014676945305249645201662101488974241605863532571828450201507584679493905057922784236072997143238879363168245889469038437561181276242698369654938178116001428367837409133015026021079614840533626761027,5693818583095067032554302348404689889827513405370432124730856324552577938645345928545249455102636900381970277642590696482249653647276002965730520652542065397111012479589269283364878130676178205766673654461574816233876555267291293343730094421360715866449358521574582941335437947403997555554148186986038285554629922609604751054748762347310142603219823359220130919495866316927224981350998367935679597793982889611172206443879512553133682522147111994374985808397513270886689704297115982752710085691562031953231724109895260045500479387280386873351701423764105530811712645875225583048344423503433093456461313617037044573606],"BigXj":[{"Coords":[31961961449149592290215619337342545369164998201385135329342844666166714363705,64636392625998908156106021830673034903148364934246785109426074897879798496695]},{"Coords":[13561027879868215202586968035768135752207534764402067848160241312364043370282,31683215740694624076579960720726613640416539517460242899883851320256877874663]},{"Coords":[102970472861055393328233354777448191839076263179087526130927097177204776801806,19849778771794568183958877322544789075545226949228544528619329359950140265115]},{"Coords":[8366486354279759555693815735694831293559828965602250556327317858912116678471,24456250444071880675953816335612932507033433175255559522554349078047625549678]},{"Coords":[93126246885046599201299142306317944158536766260090154798797491446571717586613,101632074177392193573512178573083324222329391048269493231849116848088552218375]},{"Coords":[45944473181199785374833853975473363930687909609574532965286298616052742734642,49106561873713078177518155217967815241790729328033604070651886838013799968339]},{"Coords":[88807289702586806295763026580879412609419986472794654189482668002118698433065,66889255218792877467551818840857264643456782872798377645941824720058728156412]},{"Coords":[45745777770010867130655637386117976632006388263133845103488205463444756286557,58413618959379828248439575493421719547880693819703454359788283537541749522854]},{"Coords":[14931705718614911512649079486924798218629483414127465950786381421646404878840,70853895869521315016717813866703398949051565204254795550601147911581008651495]},{"Coords":[31702825468512650039750289022997764002837389172468049717092331147393818254752,90704921170203464181329063311130512192295590723462840980995045506481351030148]},{"Coords":[108133277897421036808605843118854356978565880360693563552498521263092161957794,33994893650793696043114830343063091347849012751372498052809673503667071259863]},{"Coords":[13603746174106309213882605187834221055267478293724779491981408043396477605150,47502402322605913877968636451206238145707201411072573659819652572960084227380]},{"Coords":[21962637032374642863765173367353663611071785709723940819398260699915154728736,65876190623954751874122457014542214494068664571689464338691288646258987627994]},{"Coords":[8139291295258406047002639746372064115101651961499427493344848502049438028449,13643120656693319356484507306610353728697986968072320539867387334577150577786]},{"Coords":[871083651129542234211830236854985246175496411885064575219875767816674532739,100904963893789549224657775356884044157291453214379932308347421012612568685620]},{"Coords":[98028745019433069815621229762947408124245116227553507407780733119772046992520,60367568163137055112812282822118701471566204774343904929920219271364583776122]},{"Coords":[37332951852807254347441974643993866127041633128152922228434313154811023954744,56046459898819968566785812285970001512876757161864884424831574905585289505077]},{"Coords":[11223798616675111197150792218010453124916879614948521844981845491687409376646,70914747125199464172751182264377339815163078089055967502760766110580370145293]},{"Coords":[62949410140974969962342726366577125978516456835571210444108422984760191628326,55668150354406094271153240357261264601037343235231498038021007487545647055721]},{"Coords":[7611358883569187056502001665501128526153865541559158134839099203014115911991,87617845479447207941483995353359860120852817257735643485765526341493112597509]}],"PaillierPKs":[{"N":25922769748919102678415192880711636156565612427571550685296776086119205445525743826557545692077634738129321690187868055737306626420419536394422682260657759329710259802294458956279773225258250955469954464209933873407784778802101265717840506851919529598154066919091078766953942869622551929743069097967501533345363150709912011028449270819442207860620552088412428865900112120786495620291333470644949767300948329241775121748888220588626655915013364614554467190860190736954650967874940702908395331234632114014125372505065096924932509595285205788545338407476139436404463823043865599023326570565049384032977060875483209339089},{"N":23930233287283899271771864413305422456138957780711273892670074191715648409585503033095084345383391541524625291548041741990557564183855401706042293717552023237439032182637019639795919249455653535670614575331737610284863144094845900714497635996654401300216924764570210541950557336240993007183309433063094227377624710274228010652758134777897718742178998545079447283838099902510469006366469099975469096355736757507201973304413688395278990349533350163833514531655073848517781662614171483003731680841330633223244205178982328422170273570503713081265847261211618499950287557687314846590616484106774575999250148317390509484773},{"N":23804125140052077689856128298352557083678652474445385365228110453726681237860799979845611556170894187976654278582576364089033396218674226546868809651353049956675922595541689542576794678062495339422204984765419389268325283682512000995221750412104207394441438666051694475950049774094896290106430636216894744335784327798634247450687264677393229214665686649911456587168142148024558282134024448427550922487022680890892554782651383972136386958126051377715096556862662265886688077689941967157694195467190297477735450118736949849327358586935699405848605265912107169200547464609552395233560924746135866463084686118233592906569},{"N":27732731445242071631661957657712700411367090291795241371771965432140171981887215839890743735562516245338158767440902124645306227526755834590210240211292920385793070069156192085968959067158127765511651425539136016999745924428061397793021945121990437538890398656832618417715425504589084090095239114803460787199036351739230987513003864153861252195944069425337294669643857426654756086277471320443733998616523518289821541295617435513033264977202437153989318832642208143170451837926277566396048774049270318848738844338850668187024045715008196311523744942555689097435377598835544336914580911633671909176827168167136470690349},{"N":24540078122494262833119917930091872139739129939617606686122284549157786865278292966087938309454800165081094474899057524752572006230843959997841521536274236615511587750039832014979332539924539915807860222967109230298738770371871063759834296194059907031260324597353713442284471130560805946122495294807423458083635025189319558646442212459161798625793784738344309603016513355951936699928410805609866016648244631951643648288242475041729105749202516848107495430809184564037582943457286768883109270231510808158554549441157152513493684930416951758705877335895250913277012541968048511163986915876606316087458297080987346429881},{"N":23068407873896187320610408658036992760323120237076281539139801143529656493030091268390954927616119732305210576479622679524747880246080257702939099128994719527894439722828526117361648236913823027514544862046712398251734066527697676237348724465158893599560473200351530224245041596340220963683429881340553208409699594299261181212989221107530971303522686320513564226387471374456547377291192484997988606654540899634665450162274963086331783789860908282085692296248300574631527561763641974772756130570734735297575564567681595756096492735284720794891113064512997620639494646662790341453069978107064092657029168133504185408209},{"N":23360724885676198523522179321150194474267520026708517257764444663025119039638464657158724624502663558960702469988070676415660798425916276572290617437202837750858738892140118363926690520956187802097449221385283612203760207950600195667994976400493623569930090999021596112553157677485561299069991215207522767873493631366488446241092099654975621689119086509041077742510323711222260189730828492291459421830791540197321337933505867430138627984859014648102694909985043765241359798051875756951108870386862501048751981261038842763679815348130953290890391440850806363449637432840586263665690832227799688631446932015796916844537},{"N":25572476038149983843824758627743773292157542015669155545898739136432359227667585235619146413408812705275735125477228881724887114180658812229689479785083051083069428146070988730518675361280497876215801249358736365876007532614766347833762716625529381645528767502376159614744663698030295284120589012492759402983796882103200388651743368106596836536656368370930363045639317610411594882976032564820311800297421945366798108347221120736308176815503106682839506833524058020959093518528060465861144447540812579976237229589574562145541453749754749768478003306870660214131556451734687719631047077200787163529663274266186702479657},{"N":22679491499676926565249058751269701914370165376325885490706178594236435587374452393672919867257890172146499232592163563478749644823548404207107209183759523050603597049541204457028947474998785130219644182203008088877544305999771879137962239304258371157231174473491797491114277983084811723764080082851754276992307408859865524067180300336894890064430698022388669278921501809909740064260359142339540812296913591956784925745003590749703099702370645409020780887758983568638652737043891478141095930983089074418014910987946825193073588506986312390146214478478314600989393866198945700334073322066709926152728868061176019551541},{"N":23556951187256713732039305973238937631620385080790804249029259279472926645248156172448686117325741554381537031072742207487366612992119859269685828207319515666102872111546619607137952974660084980511684952594879342586512197525409799350424247192892012163769784591542546626323584978204193899561072157767856334488337110957680579926475975853118319141371431419486620931003438350760541975587261961199260033262263106014958269750801811225868080849204705441859105664948039653986722714354940941410686784948916936213417318953574086609821961649007609305029496977916873440356977063491030736996785241653241262171162950673703965399497},{"N":25874692591276389940909836821933328634340387691760211719857424847912710687202655208899136151842265948895002254373718724704209721944297143062448179072459504026936041473424765480639475272190837266572978737262449980766383982513621598580661341958135147571122513631091491976191663115339463730624237942100977649124658328431032849468551008597071378488661492324861414296280692846039598797857140808360770338990664282941023358641770157837364612463858095463039043959476170224596463891235213200808423306885708639894810932553685021558027739945539621344374072593175483199343233185955959027063970833388545231587659014590298587532269},{"N":21093015027631740022404443614096248522776233243516651444497036871175728958780883068858760981924585432192986275662870128643941927265524238598903061299795143929360395711020210769824764384718922898979318706735662563638859312024117764087176816929100038836825165997745175858151391747552772916358596447916581236137266690055236206686429983418915105841208302705945838725058954761546083763560226985859597874827308926656876419352353487645531847757035757295720869824004015071252605178819856102760159009139713396577974830023684477215548955933062314225333947463154019890073099705030557644025494887348484646782031863159015194484417},{"N":25298229297396047246415163429032546137139715727559844391184017906947304850232141234045323209407471473714145852636924268416866274482603754141415609592221706725085407059971638122009913495964543366119323417218834638913881087432600102264473788528537095668778412431377856067113698729914757144153775835786313302871273438949909936263664301138604696985912220658568672102041006541952444982579070062275651333990266954050520365848194152044834016212084441028573044037025009772616765171118784908205140185837844772749992941537017860827787097838183799078426827486346760690086948873222139803967157701952297751113063507286886770253809},{"N":27142202438632787162126599492908508783692765215748557510315014134009044742375492012422395905792294364201376442258017321008269356413320158807932162865700040957744157446176162447390298999320446062496836729102114052332958615915307193716216287036998207324413342337908047902088094382893405585342830460716335897834006040665407645344104524772021574862180664953364488173834491400964015536206179143781066229852877159880337660767454184922616386524557470530917791514588890903382115919687896218697262329973216887300329083882938499296413225108475327673886217363092593458630101782913564451822536507792690041998191978031482893873661},{"N":24506900410165079432913879286738242981557799447704277709132563752281068885918764244597103897934251933625444124974453530023693766922128717584028552755128051187819589410024704161034785358235535327695240184593017832269373629062497324651346586921679971074785452914954524453931920025017233873766495332551435302696547239605953737313669053194482788679487077465271167890491044626060923037626210805459313170671202877996680415217025953459280403666974895608025476083146334864242075064839862857242870450430867849337473211116054259839281123892458791925377357496234454799948092884977174468592367921171996109259120511593665944142269},{"N":26694966767987840469949338865344547117483340362831650227215482575365406012636774021468648984974992022743149425563486792907591668251920735101399223711217247824036472514130615393737405150133409306326610912172081216216331513707092964488994949651842782342704418212963772590286378010081225253538245220740244206602153540135126863052186543426616293649543741875882042173380956119737322204906042367710990417544800462728321639324791151406955584010061660628304199783826293959912579926890912970052339895938137461119473504729752401310289221600181057106776643382986556174592325963163204522372078262520351770361427042538592078722253},{"N":28161406783438289776782541515550232234219338732182263528677255680862818571394539837092411279908340595856411618560352096707955778113841586575489526111758509944691006867155143609674220650793817498419172979829028602046249597147507621299153669762040424244341554256616377217119563525915851719009321686306763607672801085326365691030132510560260181669852932393003570340516931927914922146799899039434467722922041925474101320996856938035131446584298134298675299397155375412990353784006913691603024110559796744887732721945933471868150638226543773483734660294313186275340618342717882057017678734282256333631978096376709630195493},{"N":30290385531723706663194155723402482345164001328034021287910161482488063429892351584916277391109894294446801833020074687889362652138426091460224301803948089690115686705682426193759251182110547546779254274419781083851169949275087832187538168815749507922889270386625094587688358817642053715412200458038741309360104964334706289126542952674791148655002683650712544232003067953586569445443104249283623297733191839471659254940888571771772980381177972566220724293577306168494057111878161156955456998298372496716136324267059071403030493623531599851487444134766104137251811774500492630476212318493040236485031236879687941684761},{"N":21891762840438596060416034930044842446937758373617708235288562429502315391645647044939378215035677465574183685957522821315454029977571728750605988329881847569313802549118091978526315133726370633285214423147938264418314863217805659876561184725718735591303337902948467582966199323804114988231963307083517180657041313131586070203747291724798899561367507615511932716092324516747320587928666160741969956121773346301706809405054989477031949248189136343469258532041255092588255241987397760849320759799542054627513230744643622791455964220513319415609245199516100422991698341556744298439022451385568791478794837569530013904689},{"N":25360934335416714794999313991057897528923718232366653339706494176825638906694689891746545886915964196582662458688535283322287088397853865709093712398485753916163063777301385991907720781358632265326870516346689492128442283774600103789825609570294923480202759046857115137927714980847316960609776972337028789163184648676367675625026306027140091761009104192786329465543720196130052658782412428125321357130192023653185727111578488774341366834046035305712205910649341950409228079277410881842097288924692206421126356254520404943323384573694119449632324221088061482676921038116252201661916622983158849603411299895152156469481}],"ECDSAPub":{"Coords":[92492306118178589821640584737240636977398594678247616965910942704932180187323,27954057508764275913470910100133573369328128015811591924683199269013496685879]}} \ No newline at end of file diff --git a/test/_ecdsa_fixtures/keygen_data_17.json b/test/_ecdsa_fixtures/keygen_data_17.json new file mode 100644 index 00000000..ba5d1c33 --- /dev/null +++ b/test/_ecdsa_fixtures/keygen_data_17.json @@ -0,0 +1 @@ +{"PaillierSK":{"N":30290385531723706663194155723402482345164001328034021287910161482488063429892351584916277391109894294446801833020074687889362652138426091460224301803948089690115686705682426193759251182110547546779254274419781083851169949275087832187538168815749507922889270386625094587688358817642053715412200458038741309360104964334706289126542952674791148655002683650712544232003067953586569445443104249283623297733191839471659254940888571771772980381177972566220724293577306168494057111878161156955456998298372496716136324267059071403030493623531599851487444134766104137251811774500492630476212318493040236485031236879687941684761,"LambdaN":15145192765861853331597077861701241172582000664017010643955080741244031714946175792458138695554947147223400916510037343944681326069213045730112150901974044845057843352841213096879625591055273773389627137209890541925584974637543916093769084407874753961444635193312547293844179408821026857706100229019370654679878349820290933110361855350608276526124596370838251880351927731306924732866862588333307861088277231120891078817881039010971305939264790150183265366692417445051589264902223453487096384802620587977255001176542077853212695915053684789569312211242510073220493754223378348737864980457018411051106172326775534325426,"PhiN":30290385531723706663194155723402482345164001328034021287910161482488063429892351584916277391109894294446801833020074687889362652138426091460224301803948089690115686705682426193759251182110547546779254274419781083851169949275087832187538168815749507922889270386625094587688358817642053715412200458038741309359756699640581866220723710701216553052249192741676503760703855462613849465733725176666615722176554462241782157635762078021942611878529580300366530733384834890103178529804446906974192769605241175954510002353084155706425391830107369579138624422485020146440987508446756697475729960914036822102212344653551068650852},"NTildei":27062431131775909264962122516003720577621307700606752850978674545503762322327045712593154396229756047740198870458644425173406714147601486563284216353367017457813364860861671576291918230182938220436949095109018225648486931358793025228571750572403143070647269508389021099989559676856968002395615757641794675119572488971947338527037552287756390904188517823120698354616567162661395526975254448758091053074808436661809101512025437321837959528689272191238705432334775200965152419124620293521962173467865862080429867958898040527206234108561471429991355210673373595922083144022410446012714221026174220695995286555692560595981,"H1i":14695333877946105505101457937623624377562698430478247685331048607650568913937201633971254630714736577175024535322415669442798271475956496536083972430246897654017678266490639701809689918981250971730052435032797344400248226649579239038593902835536123498617918666329121083751772876090103853533035181736615043011673643017303605152279678650202512062770466963460251942403425462061196179491356440328364636048438335959347603428717042954470887883300891927932651483741068303515425618933688194621659816079976510221005329843899476003615861655015952079393164902282608831513778303062716347528913475870793908798463564832083549613643,"H2i":12694464409184116198175216134705674117698495589897734763290223249700439697747213221960704240817308024376618649511257185410755720163743943692791263666036558979570909072667619923266653682384882259644954119285287063471541002032435823410204495631358202104734018269537402171761572193134509812396214919229814690930600798504895496564687656801956575973479011431776352638782289114699743527186781919502658003154674450714069197242726393985114420810547684173494018605147976810102913734546162705259030658206284298418521349062777115509219489672039075093329236647292016824670535351144784388483525751068225542810044999850751665224074,"Alpha":8597386238940188057388170802507419845742256940460403244206110298391557557588315931604524201094756268802523119003598855229262681357926640853773268534129416120642324436454247405984816562974026247960510453871657027751279470562164293927977157675979137396427805006897360543153428540363917907902712813552387106305648530097484737905683266460904528988959568529769154321201207844846214208869772622550302971018172809103144738069350667751451934798553912933200139655754200044440835253643507470297845377705765313505536932381622466043608134116685410245673526099377975134772900963862625066084794372663888690648189084183335317206997,"Beta":2372900827440562300088717940529337038535894574305728265502187194512938642786845227163670408284170414606957596167749891568868679374644865763773083462867510108361526676307032045219595950598482829128747379265327484626156322423714305595801588227374718701382407808955361661145916468687694843771374596347137939112137226064254094345184527465242631630857847437805528358353373693348039280559743740294758411567965900018830934413286157836346242133729838775063310274661205302192960501542969122124445984036446986171668913086861148246493536182462724393062222158825801924288905860122957562188839139636599744959108476732447169771558,"P":88154769546285876769842405156738193840385190981742311060853282808131249873020586583239327227413562268487908961397495668871787945326544074731070567167998111074502898664577463482624250005653736162140645197003478260267854213808058478799901064184787129486192007748662135329532160830701255809209756500611722555571,"Q":76746928359805630797034117376065293217324346339297616412696275985513168039468913071239349334453939851037770587545865615341779367181949178994535049948656518923123036090706244771434708405526330116847159542342070833647638697628305890940571317894174529795165098914049863682132728454697188201847350644515367322933,"Xi":67239578809990443096928340986103661629396163806652730984840847978375421238200,"ShareID":99910913777216787121500121711080713911605201308487494263101624819470958719091,"Ks":[99910913777216787121500121711080713911605201308487494263101624819470958719074,99910913777216787121500121711080713911605201308487494263101624819470958719075,99910913777216787121500121711080713911605201308487494263101624819470958719076,99910913777216787121500121711080713911605201308487494263101624819470958719077,99910913777216787121500121711080713911605201308487494263101624819470958719078,99910913777216787121500121711080713911605201308487494263101624819470958719079,99910913777216787121500121711080713911605201308487494263101624819470958719080,99910913777216787121500121711080713911605201308487494263101624819470958719081,99910913777216787121500121711080713911605201308487494263101624819470958719082,99910913777216787121500121711080713911605201308487494263101624819470958719083,99910913777216787121500121711080713911605201308487494263101624819470958719084,99910913777216787121500121711080713911605201308487494263101624819470958719085,99910913777216787121500121711080713911605201308487494263101624819470958719086,99910913777216787121500121711080713911605201308487494263101624819470958719087,99910913777216787121500121711080713911605201308487494263101624819470958719088,99910913777216787121500121711080713911605201308487494263101624819470958719089,99910913777216787121500121711080713911605201308487494263101624819470958719090,99910913777216787121500121711080713911605201308487494263101624819470958719091,99910913777216787121500121711080713911605201308487494263101624819470958719092,99910913777216787121500121711080713911605201308487494263101624819470958719093],"NTildej":[20539613942852364097890357541124859329931817468396278432713468646303963073659662742703665137736867247354367523800071318544570641421320510992705137876681425752810096966415479528824625129989063402576946505816887222102561441464103605308386975248012283762854115939987945603503283072741824666735245204091384515192454349252950007899626081034649919068642018312817079235168086885705851677572363277983076857313399016624874649811334825694862350059490166759704819411086564625186038339099281295128259092469609539775245598320922394808913338827772001777479207381548603315272620456484970681705115865233047669675602308688791376160589,19461028678249357721701139019984545699598216253588699892259672060166427273458875608319855785678884811755179389274380053495578644060470229307987007292965327985966772681212738091909180148035785695413643708212165777295662698493311553457174395686873169155288384255670661532430410131045712913078128214239252258473814281283319061613409102410606683119900924722782015902970301519339718368508022893331969649513655635811522767629123667744907556474126774472529158147258343482417188228144974952598132795041139358631852141986745214674779692377899411672630850213748161088638857089501019216868292821676374914063004957409393293909513,23815206664659393600414832732918591362081086959256855451108811883313935088830793690110550688160373127903180149093000695761674277348327575728255258492470452704258920461298225437641154249481888087192237143947805411796310656512191138629555279666557122333244803756577286887501632314162770617970064401783626962319950524158923845138939649762251756759762119774585338772559055859463599094869423262313306255644927649977403492926253217608523813644206820059309357940964633363130901166057002430269910921882664166860038861390305316020579398429144038386189480114288127704265879389663380565983482028227028306457603727009698486364281,24531363009049563762536664273685630249930678743601473345646756718446749360580428942513295608401046098557387011967587876621178423418085640157221932880387840241062539585907115950101921176093340357598786734576629107604766098059509560466283874031181440387973563913507733219768477775440248994272649062713092103053254889978195382189063452107439308150731662099755008823588080977928436274879799764825887538020606485093127463680041134931480024720440536560752357773730443722294290727915022250638670491342013254556128005158924861347226548459626859027825687870031912255326425000561908947972742109607669897905187712585858898757609,25485947141960036800495601740358196336268148055632283852581334267632567089581351729697672659186150817483946028874699734841543360085445274610946793774678284845142698994270979141586640525566502581978495871744643885460820923876472270768798335817566781711314773489485670479771252073613546268231833675772584402239718946768734191504723089294480532048176604551680713541748910822012363078082926628834536634899606309021451196325472880525430322895659546741570135136047631868000597393506058143850364801619503318165686086392731222189995494225633540472226098357551602534472541794408218767265775850366289511546336446350346021282237,28927199961592509462716713052933904239681693743133323458100757563361525410670677174848159248824087482997906403441479071298957717300803186875289912194352025314864665854179681659546207985006650252942140268140510157106320849846175665072784539119695315757729095462689260495430463870222739869312073694346079553731438032339737072477343055235278557275309616493517920166164080693605271556685355062728635594753076381152709174590915306592547837200121302421882042327338955791916538647734045471143845013412592155994390976714634271247514800401724247381959070976404354024140134277339724455784411154537706347451440209596089260579033,23535119694477523772171748044630208131923028017288499693412795663706886468394056769073862998142660508474676105711590469240299300182072142961838102383606369450702330959729879893242049940029310408964084662077585876233411878169942718467081776763994846585950049650660912827541883992039288017630464390592382481783566823924532043610685633953209522603678841504652207254189077646669746333277037092923165111872444873598439940966325805716105630151638779643981500665152639984434504817034412086671254173379166038071662889121653550757613052820175939040916661555723756176613161036717523938816196299007092417098079561970714605061629,25950783447263038071689830748627856944354421735888733670277679971199180982562433131778324823115329151828330351648021612294094370722267669972986008148650808031918722892417970047773133521052009921040352676366121022268583455702531977371124075420219730460605780729481918672698487964603151661149289116143779941433746038933525309985350586367303720987487112290090195247099032317451409521767630753382551078895196505751734814139673689437231496521554705226938471456297964527299627857211400740652357956604961830754401147898467475649318148547949522809325493238323065337997986089837089904293908389128632840557033917922339991780941,18687318215344566555182740902454336428592486945614858718824661784376438207943593936740995084200358460316665071770681463630810552799361606949595415859491617650913620153502889285378972038135570359724693463761135116433672709408902151793979112715679738392883186006369274528906256519536716049908878346476950103274343269649895419042195937774381514132210454482820166758270346958078142742840173830940449171621914508101385104081796180941351697633772994457709351610367195330318869580666697900958479010130985251846923421963647318437209519428820003347978947799013079168765159404172743072632243706939700207639779907975142224264481,23171083837957860801722218699383337900446240030786871268841926233540016534306722256418697981846104677203759841627977766724259030420015851980511088229043403050763668171722648141766116654882525867416891436685059276174192868946692072206824573955678962077288068058032958478942750338128252470165933443869447212456023356245726416751721989152798706366691818486325734110680894776063318626260722657549472271184224308146689662638536101291469177898475337027531732897213355102104990685266062044811809193138366772764276162181116512200063463469172637189164324496242489479899844513951546392297220122152709400797483802836017803985829,31343857270714098359641269819793471247744609345771779520849062499842222751853736635128030263011267623933026775894009843057499037409921342064326054830123558338476304900840753732976691522721379417037190976719048367738172877422341695489954487825668390415147795382659776979019893183466662138357984500601883268994989224933833342232607751640920642550766835871191739404896219865225614116435580799461951708239551693029017567595268404121330207564314786956323833427106966279493560190075571199071036639702485305576334075428484139050116713328535867597124971991546934922511844853709001583656359284723717084806850145785405536911177,21157487427733991932564510362138492162446873104287756897983482468142107066461483198236006898398559574298806811271053872211924774119515269456039458266616445024300383802406544466004007569246261860103312006457776588799344222340569710165666518367783547810282003032927364478322210948885423703591814633243286070072754280297773344097615910071723846039979528910869815670975142743376293197136856592859188733532786144697373533341877747464753616005694543102759948736736802569257325101204596297349394258616025918915521692968786299735438817719576226325356937526633071323693338940757362235570825853130085312301448111119042363796113,20871071186633559430638470998115518791893553646420368867902204568431630269565952322291766136370093127894084798814242475456617969102595313205728405129168253735048454253508700456761223106599134617920774227174015124829476988377890165462875183814841087993485125686632410376362585538078467534668954228084080919739417042353928509644795709201564083148094079836306167650314513450129297783489119015593642581024870311297891618816623633162063381775243950740681581620150958717466968747843706102214690157071025611480716612116918336154774385432247274600064909320680551901771492165221773721500541614228617829117370166464409020423677,27392140202372139560911530190722295626016991167776777076251374167016701252229100335980281077736021393527993281083564981442696373714433732500818431355034758384480955155409564373832745499649881975977124862697809360957420580753883129965594447943274206109113518479198329538838000642865155652137973709624008263285324174285285129803357738290385065522262059795474318914719823768887144641758090777562619592046692917101170170722723905514971631800061092086777420826999668590868568525034863406950714560799453233548147404988580929389926995856613912328981176466707497680180241272497358147647189027922268738449537259460751070153621,27430458285560064975603737623690566617914765114564307656159371148918349993794669623672608540855772729568670170546349850367039352526804750358257162362490778729908291097260480430890476823722553654389178498566668573496227008913481934125881578164602723285712928871252207939941804689355173665470036039114037118963971589320342018774107583274314158608546842149328506685304690959566263296291871998398637364399822435359987280203416832697098234360106966146607816540746285266790106830402077656904149244001383199485864465648143588026246539864484902228828598281873311925831114015086450712030764672165915248196209070047454495085169,20958576649034914977467969756965874238364659071947031154211972997487243461262394795340258789930977809611131615831278870909123144191655991893039673506539165135637011485008482874021240555941833074286915507794874804218274011487390148860550531668300157069443584231888571925159473970195937554740938933226402208131160317818926784959057391389980505131685522579677264162724011263439981256344785140426649255485125637348357522582511064347878764724812085894898146080695383734063354384186594813474135513405234523117338489484424618032520881618202129068318264606277435174234229102947510033247339629069254901430086639327996737230861,25673210614761004254141737312053451635018146154378993341101985326929566270344015265597835170941666913606119762699769929117810862190840467973932188558749547474174367822508601158829928161219529997833862214002106486508027112865708012732033692783629855485545330232068552007350877531730729790772847199443436084419382562932662568511421420283558235026303217907581598166628555941188586096538364407553738314729036218493332920854764055946289816665260688813327844579390598566768671973314358968068459214729157676432241630688442073088681756498136814491310636028421098965714509622937097403466307515165856202257786336739101389349089,27062431131775909264962122516003720577621307700606752850978674545503762322327045712593154396229756047740198870458644425173406714147601486563284216353367017457813364860861671576291918230182938220436949095109018225648486931358793025228571750572403143070647269508389021099989559676856968002395615757641794675119572488971947338527037552287756390904188517823120698354616567162661395526975254448758091053074808436661809101512025437321837959528689272191238705432334775200965152419124620293521962173467865862080429867958898040527206234108561471429991355210673373595922083144022410446012714221026174220695995286555692560595981,26101397013404440939950108603288565551073409553356897393691328641679505760230621741096317929709636865532238670826796537369580597665138924272200816037026280780915781305836081579178356868109017075793286763556497902869947712856535743263321959264839901002581734771178344662509473227839268090064000382806059250315977679226653239225555007655990623485545590336008766750972486014525144801720879444739045959169483687885427725508164188831961197284042818573448808100923870021600896976125650269597381009562192855793477760166114366163011349461311146903814241124631772470784181050979028948750586113514587005436500903242591757553293,22437602225740742482465534898349205983133213895660550238212001804732032977697798637757435728694311659299624886491819969612531644822478331097020027346346025174540910579800256280214031292073085792970245723432769912206355626120327772649905875827091190500315669126429992547075064736037570537735332469814000462556933603719315364923773085086614780916637137068518726889173784282955430621992569759561719528189938429235007732504425905045067985337249988673084527372002559031400047880307427208848753891291386460253720313523072063965808016289774609282102972264056704286287440985034888143293816594327214769326166521224390393446693],"H1j":[16370062914568124684409954423220013634799944354368183091925443712820668316759795091290952642141219645055533606292548565759917746455430426634828957426644826424037530474618159463204943752577732484149675671820306363344833458247384057865310742915406677379586789735200748327711872632191061145184949312294612467345847214916930759229195852858849386686352293049987465485866498220082468131280135383612600619493426252446949294373638968518891137429993551161437309269629260378927918725566711632082553316166822070110359114229533322390061282040482480263995079579444943917107997110057038662405191417861817663789094790962966996587522,5792666313208572350705907594949414590804636531753541567087068453778543363077542142305947911768781865374122070750607847515026168979710170113788718287465368491981654823945993941924700096393523941715256095048825025361038086570514643251828085846380954791657627403414038681940866434304045104130214177360598208974353162505514170835103706979081795485247158115653501838694614859268884296606546104394637012764653804556264770973741677326601115655746125293204398034469241183574629519235451142797709676366285591723984602961129858687877266469708766607187000988412118886394000517917001485137799190522482532376333362935442751367745,14510201356793997359892744405553071944121896518459738320470368478827891282273167297002903311912769777071155241288755372185351193850631471716718530488323104261827697027757019895835360274243188719367049075501436153398857359555924247334095665350350441220453460409146684994664351725204034521761578947269005519140498383255606322844603919000682223940913285551513356600061526959181206093504072618536296265435830192715190515397064435874311583709516596584871136822289753837472532490128304199643440789002058080030111113389709287097531544417461853059085059819958060220257218705882557929843952675556987949500595639655528439052202,21994027187251658420706956116678134303619268245311594874227984400819404446053485122189884678892175444688722527594580466254690437593853064923544979570444911946308283663229116693350631331935027065689358169246815279257122823014594309629197723508317910829246255814111959552337648906237682616732913305786178221005434606679461852547394872592127050442856550471832240167936976142756988960345619830477159914332536955389792251800932867389016006568741180137556936582683389834385412181167798283357296952856933963222988284608097870458140102834156304710781157917296313315513842893014212063887070100364867105131178923785373561146050,9913834538682656788610829579771569556624609911472542281771864528920206652057360227595914694025069327892774241543292898072673087864732558768588752951687639831868499912733997907550450742144719953844448973554109420086839278177283587750852958353526057789017170152122423018814264172807655239353760715885145548388992476483731471865364270428702324445078126354834888878640191523880163270112743069852403951565444480363239177556818094412397417215136415082364220806171351930690164376890892251369372868624028034980680685551131786332553623705883769998271596791035214982761974622986462384695349153129828098712177799482890430520965,15464554656029222110560140639422624868539470020281691165975400448606613120973644407534365935510334228227263162749065335291017684520353168923100727746351715681760916446206803485743114757577242723665933043744987644589191843035807511863595701170012104449542518101585729174897996392297770818633483533801844500665798250501473521227123975005972911918718226524366806206633841675388137041998857549215313632375036761617534744890091542919972307048750757690677067439820416806817051344016166652866968067639055986253789416713411110543055264622333767216550525033482750914452894139691102713436731472281130988207399023815239852528906,12865788614422531768878171769038267076266208200249164027644212721909963715015912538682157638127903293282023380796412378159235431043017021949518573892381565899437599164703723050587964116914107635838030249942901605297513982608974593500166572552953195544515492725593747884602852061628830280449190167844572097543184555448060083835007200101317266753106995526429573085540857281097156159258319440414895242242967023265742835942344738184941128584859242462621792495405423196954908356769683815889035326257091875874458718611430785903143039161526479973858541524126951528796262613552089943663340076548393182371918642954593889432834,22194516202811321146792934079465991238594712937226367504517257988113211333368349800836879103947252405610400726941861867633710543721876626238467090611506859331575128297406631557631820626534381998686705168632059305910804423292984195597625141279765512951234238593649775486094326905655122386938572411401132183960062730500896105597665702000968846572795357957098192758080717128908256523579293163137417423771381528097786100281383788052729825837521137512379280310081930804124457815661946839040621474089357381345723789618079958299474682840114875558952249988571746058484000722421698440994062460208554903525444210802321182968014,2022329329707369117437055740094404969047484980501833952214571687130852032499620508208708908589247080600189902502365407836277381678968110704345539053376355432754797822267575827372488857681103447936055038802753292113151984972961755143427625893918328299356797405969999266508287378495280713821635381697950988327467894890827305051792226857027384943282520470216088404776455333696749084292781033264737672933515625823807581567568754027253581653106384383593181057349330506068884659072076739226363616897242406137010778123983315619151551375977509919335513557274798510437948502408760645678633359245877721858614575061700591393721,21638702445456858422878500352234793329413106731788942261751796025224145517964611169394617788434763506002565806620170893339110273126875286455095506459298086020278318872581385674653253080383128797980439557511752718258375238388481802546638936192461482797150514683008473213407715728694302414916863995043974867827876036585791719812271742103323384468954527534596036617313432433874380308883492321501736879178345427074046787174556058119038049586737477628511165980047288251497278209275581664775606335268904384984155864116270266473616061700061527150495070719210903471680082400487754898061609554671248760480063619759950744280907,20932768206097680299943959313782719928339866139959731166252002876096405653871733170637914957728294590217455322823662941811142831487382716004980657707514358763150029924714520812685697751484102120909926147024006189544048800446501267477163792293393919588659127430522309503845365000611784195390022621092266420671288509706282186373855655358090019051530324622779193478505342408854462043136412488215465955955421082850282626458587043647758494935495915329050933653468179762936320308005669155322055934931071589853638981754901315764484414249149121368560265856082417024956730272011998498550756243974623835494966366962683389714964,1365816667585940330490355905311774458514715320376130020996515573937571923987574784307504874484515899610747050162880466334946062918938639620242137371098595406424267003818882220942016240927776918797542668204898851284066695289242978919397682088055368818116198595348273129318762376760634794532531433638073562846988038755248023571028829475051882101071203979111269507596248527906600986677728810751499828436067766182628039345309355341295172437424660504415028913205507139100147921515616240146193076677157859750716375066201587358526136840334151066553547201088947345861316322897488659331106732575557394540428972305438213375814,5703448175361065536885380258834894924349694750000788978424055908887487214267289314410654116737467233333514153490994654420800717947051017245903088635547080581089891657444714373263301759995815635072257679749046151543038146531810310826817366207696928190231298874979984114964348460891792295427444943206125809938612729939665048974349693961742238426880015130297226114935093282566300228257419316454068258492582819117310017835605391570376283517758701794125467889060184214275911038527696714000045849219024045243597506828846590195831908281658454892131533791810760325400211405258812142759529523572815227489710851557846638137542,6412242406353564485058502679404605624009190790593030266854505291800626778702270387175472290319448965303250433574173375628339895100997329474893279692868549940279796264731093585208695625011062617868491258157215447275957107991387222489580499373804335870682739788296835432969262878909434810429803264643527538555130662379672012787064972208117475596665593916782896686056579449802576468324812730306559649834202797329883549294599723290402017221639617907711497472325019619452322282704828796586508386419927496666562295856731151167316262475184222145101211618002798513055006067228431048839763646095282531119806559583105533794495,12506213831497706601305625665856619892819919408470741644330076368184175310515183251146177621238406207206410185643656979107225155831507800032694528257147716038515158570256044209419514879851010106278924359714862316802415670557334433034976750101928783991744583819411313589306343712690219032368416678985323530251239318661396466801994308940886752046080901718450406046375904389766893043894196541576969928137946704159382893563356338387889137855413730990126192021766856444171515497507122402917749807424621383187173538906785892654668489198127757882153223185090960714890345630801099413698632285321494907662894187137142803150791,4340320683992731212484211057800765907410470847269768304639037529290512671362801376775768288042129836088810539204858832843247178308000345604701431226310915807542068901686097542648829915466491213307097734259829414895234796525272600474326857346693882386640793824277606043756669695477090601330450743232413209505539149906338741119182508496705355703793044044384724643256986023764031438551900073624644692938223394706241422593949897781383635695299729171084301185179708550600098470031089086344919627503113655735768701217637285566867914251954499504690075652022468818725559007318841314414541437592229352428286215595483845053638,11992304082547451264970842283976418853821301172975086658682116387543359417074268643442593212371361490968819128789238354995117145993279593426471336648259583293294202599078859260437992548184464009386152763827946804967424362206055435693041324410893236957405711025923054702040161696386453571055246924713260145964584750230359074777621444549946362450468684233332414284037283955916761049858000878784786268023500095161975906495439332741618288811384519280375489794382891880648564800750663555801045203854227681083222146920912455217541211811955477767635787030014152643158711960638325867606918508708678622347924499914937535267162,14695333877946105505101457937623624377562698430478247685331048607650568913937201633971254630714736577175024535322415669442798271475956496536083972430246897654017678266490639701809689918981250971730052435032797344400248226649579239038593902835536123498617918666329121083751772876090103853533035181736615043011673643017303605152279678650202512062770466963460251942403425462061196179491356440328364636048438335959347603428717042954470887883300891927932651483741068303515425618933688194621659816079976510221005329843899476003615861655015952079393164902282608831513778303062716347528913475870793908798463564832083549613643,6361624891550612817090909815430156259585522002511378700573226127309539860650523892977168943678195716824260472829831132024282728135758912178943090813161584286046605117495775878170654691942858452263763077967647297167266507685944611403131069163214134338169098006751105941940463654618427873599267528041887836331948305951890335742121311832653316741398094161561749334956600724220433324620401615490879450816097431926849306846384679126203940987154375373597650036103822699248044107851648286585837187416880739896147553285981829664828869063480707437325000260106329487862878699057790666160151383639198420965781777521408308842299,14948927140088320458060089936345715166494298631495857212773926944790409869483957673185876995292328343640197788589621807184518806705821872810447516194927678801617268846361533345460325613772855110322242304569109406957894646727384216069315325052819333705539766154972989576988248927288284161530384846682668538198851543196833452065614949748530253693700328342501577900059842225778082026779632761099626760985225309957646536118173500439351182747667021029407125807666947346322131872894915154624415940708414296769044070685030466034270063053482191494419465005898644603408406165778424189251953592599788015054586521957253320449350],"H2j":[9653640790649475435050720061635061544335995170813227062007808546473167610366804040613054457009646767723479128021709179513573358845884462519136809844401815066012655857973373223748942767836422506840658738556503260986697250346171921063441485400421533124068250604530993514803166454504801884882297625678932746326066096923436475087338628767636689481829832307623108408425959669915171224014581673426602770656342925462023157550194457295116217893440581116140543598050947318929500123378985275492765280831578803707538206440354119287576298034238031692982504012470196898579719660373199491817717767711160029710911173725338539566802,3578111860663702772408903345930659472256129868015762875031051677614699117364424442270785915866444756532836287879751640816575659073006676007210405202315496945346450727441553016187592354415793891110773645408147683476571812485850037389853330648238106038729525075512542830213816094853869971661719959033499816133612736102442725651388405183329714325258711655979055386253406319598230253658818466953001815116530962213661362799968355793928849708876651937113231862631691372187008559216884922263381652908899796744393080985272287681952842592674663712445064149288160957033524932550150413325097150870149209345404214256294282382085,2562656890570835296352376205216590519360952576353253013086344012422175466058176642832419040937235521572328705583208834436813588375562745525224328564354560731400723267162764903064018742843839822445601315505274421672289602485557719646504320106522113645676636456687468751723898215955665240524139836668877382766583475339565598073690853848639545227831264115164596396262772422415214665834769274554577301336288865874066248890243346947740610544045667761548206600923673948174739356732295677551749947395385332556227074205668024351973201205328576603362256016900712683688241615565934460363012498930253514800348031700419220337084,22298685304249156715841839507145325522077048988910268345524279200863227356693376151033928569980263444962701165900514081299580440300365488019578288962534096517468902687907593109404000193096117803450936780948162440311950526862133749440555125530434273281017640257175046682563772712146188162909037424635371282116160809281350332585723737917537784267577381007869736550494661878733387948458251550312048040279754696568539248453484809390032249968377837207868808482658171733689439009562188880777607125039187467565549644537971596666666932158369857160883674108786200103009448463903055431989786220430290067137368612432640074310237,5879475324785385886080118453628099122983640585548725925692818787221734315336181255707999432375105366554548265736590343628955580077952532008988837072008731794155978542038914506112861039350525606157951017828660604272526605818549217659336563240062224484914310161520768881507503977620229908361541865095980430141394883457555144123820008061398004875781145432780438239985999952863196781468403423593755390719871396312035325131303835880979744451815683310530516197085535308856850866798018523735074120787646575912319226234213646284739550604897450763442470406797690674949855848424274918433854009972115369882751833585035329242761,18385446607341413929216752317617998458160849115285197433981133872531647462267817752048089105851349541660795002685652456000086108157981979426453705134803682299691630928200421847304354380350114763235863451959398215394354125874494984531309790405988904217354164073819568789120760731377280912128364362051769093741704293517942028826498663326655241508795914202031051398724638536523567800437872676476082333745719105291491676453403521845621182329449421075607837301738332926110019535833222421409565228043580701032497151738816862657210572819375918881851411438625526045192015060739626198734346744421593858157488507552447503219157,1543023308301318791291636723263661645234407352972693347930324541592073282303070472660827743672362126204249434834670307886593868303926045601951702434485524524299146190187978789568968092026789881246345813079894138764374868096047892517784410005345559357208978859029831295378789933334638460830863012154730679683049737545160281582305039520027158141403805442275432519516975114987511502563484403828987844187725357101956491714139410763551382100998178318863295224089354110436171289236674317711473441156004575613857935802947903186710273135122934512388821226072049093290647716152026391828419205457729234939199662889356527012444,19612969155814925927900736991694631498815639143900750081709470615537990112217002271570654324774711607889679093067885009086620212727925361021546388555967618760690930383917718167829905900473725102007606380323545403188303409627969907029774876076466652636827981089598601596821629485556381455948439528301393466043329774616323471054547330305463639720319551756652789237846520745512886328152641158526571443916940675394167134193466655448590323552123565655514390433855054114283235652222186673800138041449545987929749641868001910765212175435331820335256408276886037716378072029444719891008048297796893611911457701948988529229282,16728597479991680407332164223276251930971882378040601546182090035388885277790620642130984559023085396113670088325023048100279567479347085329073035696608554975777409036805727779421519384442869313567486101701856985975948368091166211269762554257345698853374624187196304439193724792774291722910128170261256918581442838390388813651239625403911503915460141004046718650178671549506593787333200145941149923809156438433492770338609398675185696331933468246886804722117355530728325631706711888199439210221397335620762682713255422110226515677047306270190770133307509623731091673964502293431264279055367772707113499782043802219072,6959317283624626561280838810011851848606573383456333866356771642710009365943896928686358713606049305764133589953562485262421030190625379899341516940088176438653144375343629199857524649360799157617467464667207079997090732685762910728717721600193091207478294785009859545546272657408615665578978698966309579302786158306046780048259033960048367018506262121833776982527433736628482989970739839626561164331780819203300647377931749431379962789021848504353274218995997754499900534324222498419599756583548358913120017762065234354717544865856293340540081744252368993926137398125931373959455585431506453093937785431907339954440,11707820384786665143909181917722140695066077204138675859555940823963085499198625584153264077484611920625749300043796981737297557284495008476240804003977980903028035986014301427047695461308987163082644181568819427026377861293089760745032220979974314071873695748444473344481739404234865330820136242966321355292830007655295383627072182012764804101331409332152687101319613845603099019594628684448783718018158413013589965095889558760502141979036830513073469713570347578185733951700672935586145889495063730457422516713768592535269075934288536062686021973569079600458124449475763651523966025703378628943004868525425132768470,12680113365919882057574106113475868522128522384382601197321116786250024227710942753687346378669117549887826210207932325610070970266526443555090342822407043741408930676918514338947859254583933603158241276952467805479024344654828575004834480980171788527657050724406198542408746742354531228386476751247072501617975174749412587537766151828306153888252035411082379552917399551115964687725743020641384211728557413837203373250893065347048255589312756928959773947595990023044227966600250595372063312552514516053386563033360883348059069724261103859193470298590631028566611086928803669676829225666250863192855787196720603673760,9019657743968669607069997647539968262488442864840563257526073127843215521457164945521996034009113740811008633126128201485876365964359243077677187550395794512954090076458031575481109943534530172796807658845833964496790520042423061347000207701119849250007073432625973802817311058171823571086584900654526615124913824393095137876668486739795620319593113487319306758076868523633806281732675535191877729151172494277333403640038019691517232275137009983348569240826245496914996509643617684093222096189728055561573909735610063401084000594789204303691795045753669664876756897469727730211469836756344045393712182476806348262481,509727692658127329234819348282810282823358222955712460979035976368760532139665502509369544837059902335508770138210475703837249689840377266421270410968940058538125244069674567645496962345390684467242600183265156396927471901904730403435725549974213712745153254130090979413745442250230122176329142735628394058559735078808655502950813887104168441824680204081093532561399756958380811786995754253778833219233414597390819387529718886819478101169481249247654168746478268826094117295037052091370216680279456693786586815595643437522530315484348520350527079378100131478937805285900851443697897872168020710497135465069780807687,3842294189873253197555038084451026657880884971357471477404186912118522652991181539287485996470843289095459960588932515934990566949413638625169611068786524327230092661471599333492933504858312443510340452825109814219748343465626968500133039743956522352452046474898271016421645025612565409422475581907506677274527441400119913285024497410632467771786023570373229380492185234340140113773065511943229164821322784643171443642045254567266530741214826934397811463635644370547054062567012016231228876473774669826378368361454200858389911185989849447377758286974943747417740672897265471383352127822433439855380640722238771424561,12605457156020973444763168611522695283402376793806466187139735133742095649198553225011255516233464381926302993187553632508703365300132776800901755737316341235931477791227746456204649162573568121476427289406145613748980339685673661511024577823438911510307584137593479079190723698666793670318162798116104492476114229973922338166221669934104784402698512349426984473431614385866651807327515058966935011035923319124790759086336194395000632944700277782112868323483780168144642250558671981757792078139349701070563555668082796938131863328410412160150471825619049694173807371104601644825755844313657731729068891163705563867555,18221138784555811053296911040444811422299569221370698341523745856400091281377839778678778328149110548534138934160836481393838346908432982920562116626677959686450236292050295531261923474882738697393510842972966810110218027601675376030586402861098487543863740705626110087204717386977952136809165092530095562928623301371629208844732733664526090007002304626939446606391205626126192870615394522174649688440887870385705569710809581575204639778805466412903927058799148697158251622260213645585723159916754663707237605872275846686566820885362722073881904277317597403167380835907876296870877478221646920284310430371934404822311,12694464409184116198175216134705674117698495589897734763290223249700439697747213221960704240817308024376618649511257185410755720163743943692791263666036558979570909072667619923266653682384882259644954119285287063471541002032435823410204495631358202104734018269537402171761572193134509812396214919229814690930600798504895496564687656801956575973479011431776352638782289114699743527186781919502658003154674450714069197242726393985114420810547684173494018605147976810102913734546162705259030658206284298418521349062777115509219489672039075093329236647292016824670535351144784388483525751068225542810044999850751665224074,4201765615355271720665237538919680402664127861292891404309962354268106831635826650331041297039291644925592311983403700464576600435518882156854904159089879201301912105368413055078865795374091914623189759593456721300785707753873135853357294442043908826331857106210726005526370024055346666586491341046296314798619327898858072624823009991437876242325624019938022318176060332738994176297193724805935694309014605422020909137014676945305249645201662101488974241605863532571828450201507584679493905057922784236072997143238879363168245889469038437561181276242698369654938178116001428367837409133015026021079614840533626761027,5693818583095067032554302348404689889827513405370432124730856324552577938645345928545249455102636900381970277642590696482249653647276002965730520652542065397111012479589269283364878130676178205766673654461574816233876555267291293343730094421360715866449358521574582941335437947403997555554148186986038285554629922609604751054748762347310142603219823359220130919495866316927224981350998367935679597793982889611172206443879512553133682522147111994374985808397513270886689704297115982752710085691562031953231724109895260045500479387280386873351701423764105530811712645875225583048344423503433093456461313617037044573606],"BigXj":[{"Coords":[31961961449149592290215619337342545369164998201385135329342844666166714363705,64636392625998908156106021830673034903148364934246785109426074897879798496695]},{"Coords":[13561027879868215202586968035768135752207534764402067848160241312364043370282,31683215740694624076579960720726613640416539517460242899883851320256877874663]},{"Coords":[102970472861055393328233354777448191839076263179087526130927097177204776801806,19849778771794568183958877322544789075545226949228544528619329359950140265115]},{"Coords":[8366486354279759555693815735694831293559828965602250556327317858912116678471,24456250444071880675953816335612932507033433175255559522554349078047625549678]},{"Coords":[93126246885046599201299142306317944158536766260090154798797491446571717586613,101632074177392193573512178573083324222329391048269493231849116848088552218375]},{"Coords":[45944473181199785374833853975473363930687909609574532965286298616052742734642,49106561873713078177518155217967815241790729328033604070651886838013799968339]},{"Coords":[88807289702586806295763026580879412609419986472794654189482668002118698433065,66889255218792877467551818840857264643456782872798377645941824720058728156412]},{"Coords":[45745777770010867130655637386117976632006388263133845103488205463444756286557,58413618959379828248439575493421719547880693819703454359788283537541749522854]},{"Coords":[14931705718614911512649079486924798218629483414127465950786381421646404878840,70853895869521315016717813866703398949051565204254795550601147911581008651495]},{"Coords":[31702825468512650039750289022997764002837389172468049717092331147393818254752,90704921170203464181329063311130512192295590723462840980995045506481351030148]},{"Coords":[108133277897421036808605843118854356978565880360693563552498521263092161957794,33994893650793696043114830343063091347849012751372498052809673503667071259863]},{"Coords":[13603746174106309213882605187834221055267478293724779491981408043396477605150,47502402322605913877968636451206238145707201411072573659819652572960084227380]},{"Coords":[21962637032374642863765173367353663611071785709723940819398260699915154728736,65876190623954751874122457014542214494068664571689464338691288646258987627994]},{"Coords":[8139291295258406047002639746372064115101651961499427493344848502049438028449,13643120656693319356484507306610353728697986968072320539867387334577150577786]},{"Coords":[871083651129542234211830236854985246175496411885064575219875767816674532739,100904963893789549224657775356884044157291453214379932308347421012612568685620]},{"Coords":[98028745019433069815621229762947408124245116227553507407780733119772046992520,60367568163137055112812282822118701471566204774343904929920219271364583776122]},{"Coords":[37332951852807254347441974643993866127041633128152922228434313154811023954744,56046459898819968566785812285970001512876757161864884424831574905585289505077]},{"Coords":[11223798616675111197150792218010453124916879614948521844981845491687409376646,70914747125199464172751182264377339815163078089055967502760766110580370145293]},{"Coords":[62949410140974969962342726366577125978516456835571210444108422984760191628326,55668150354406094271153240357261264601037343235231498038021007487545647055721]},{"Coords":[7611358883569187056502001665501128526153865541559158134839099203014115911991,87617845479447207941483995353359860120852817257735643485765526341493112597509]}],"PaillierPKs":[{"N":25922769748919102678415192880711636156565612427571550685296776086119205445525743826557545692077634738129321690187868055737306626420419536394422682260657759329710259802294458956279773225258250955469954464209933873407784778802101265717840506851919529598154066919091078766953942869622551929743069097967501533345363150709912011028449270819442207860620552088412428865900112120786495620291333470644949767300948329241775121748888220588626655915013364614554467190860190736954650967874940702908395331234632114014125372505065096924932509595285205788545338407476139436404463823043865599023326570565049384032977060875483209339089},{"N":23930233287283899271771864413305422456138957780711273892670074191715648409585503033095084345383391541524625291548041741990557564183855401706042293717552023237439032182637019639795919249455653535670614575331737610284863144094845900714497635996654401300216924764570210541950557336240993007183309433063094227377624710274228010652758134777897718742178998545079447283838099902510469006366469099975469096355736757507201973304413688395278990349533350163833514531655073848517781662614171483003731680841330633223244205178982328422170273570503713081265847261211618499950287557687314846590616484106774575999250148317390509484773},{"N":23804125140052077689856128298352557083678652474445385365228110453726681237860799979845611556170894187976654278582576364089033396218674226546868809651353049956675922595541689542576794678062495339422204984765419389268325283682512000995221750412104207394441438666051694475950049774094896290106430636216894744335784327798634247450687264677393229214665686649911456587168142148024558282134024448427550922487022680890892554782651383972136386958126051377715096556862662265886688077689941967157694195467190297477735450118736949849327358586935699405848605265912107169200547464609552395233560924746135866463084686118233592906569},{"N":27732731445242071631661957657712700411367090291795241371771965432140171981887215839890743735562516245338158767440902124645306227526755834590210240211292920385793070069156192085968959067158127765511651425539136016999745924428061397793021945121990437538890398656832618417715425504589084090095239114803460787199036351739230987513003864153861252195944069425337294669643857426654756086277471320443733998616523518289821541295617435513033264977202437153989318832642208143170451837926277566396048774049270318848738844338850668187024045715008196311523744942555689097435377598835544336914580911633671909176827168167136470690349},{"N":24540078122494262833119917930091872139739129939617606686122284549157786865278292966087938309454800165081094474899057524752572006230843959997841521536274236615511587750039832014979332539924539915807860222967109230298738770371871063759834296194059907031260324597353713442284471130560805946122495294807423458083635025189319558646442212459161798625793784738344309603016513355951936699928410805609866016648244631951643648288242475041729105749202516848107495430809184564037582943457286768883109270231510808158554549441157152513493684930416951758705877335895250913277012541968048511163986915876606316087458297080987346429881},{"N":23068407873896187320610408658036992760323120237076281539139801143529656493030091268390954927616119732305210576479622679524747880246080257702939099128994719527894439722828526117361648236913823027514544862046712398251734066527697676237348724465158893599560473200351530224245041596340220963683429881340553208409699594299261181212989221107530971303522686320513564226387471374456547377291192484997988606654540899634665450162274963086331783789860908282085692296248300574631527561763641974772756130570734735297575564567681595756096492735284720794891113064512997620639494646662790341453069978107064092657029168133504185408209},{"N":23360724885676198523522179321150194474267520026708517257764444663025119039638464657158724624502663558960702469988070676415660798425916276572290617437202837750858738892140118363926690520956187802097449221385283612203760207950600195667994976400493623569930090999021596112553157677485561299069991215207522767873493631366488446241092099654975621689119086509041077742510323711222260189730828492291459421830791540197321337933505867430138627984859014648102694909985043765241359798051875756951108870386862501048751981261038842763679815348130953290890391440850806363449637432840586263665690832227799688631446932015796916844537},{"N":25572476038149983843824758627743773292157542015669155545898739136432359227667585235619146413408812705275735125477228881724887114180658812229689479785083051083069428146070988730518675361280497876215801249358736365876007532614766347833762716625529381645528767502376159614744663698030295284120589012492759402983796882103200388651743368106596836536656368370930363045639317610411594882976032564820311800297421945366798108347221120736308176815503106682839506833524058020959093518528060465861144447540812579976237229589574562145541453749754749768478003306870660214131556451734687719631047077200787163529663274266186702479657},{"N":22679491499676926565249058751269701914370165376325885490706178594236435587374452393672919867257890172146499232592163563478749644823548404207107209183759523050603597049541204457028947474998785130219644182203008088877544305999771879137962239304258371157231174473491797491114277983084811723764080082851754276992307408859865524067180300336894890064430698022388669278921501809909740064260359142339540812296913591956784925745003590749703099702370645409020780887758983568638652737043891478141095930983089074418014910987946825193073588506986312390146214478478314600989393866198945700334073322066709926152728868061176019551541},{"N":23556951187256713732039305973238937631620385080790804249029259279472926645248156172448686117325741554381537031072742207487366612992119859269685828207319515666102872111546619607137952974660084980511684952594879342586512197525409799350424247192892012163769784591542546626323584978204193899561072157767856334488337110957680579926475975853118319141371431419486620931003438350760541975587261961199260033262263106014958269750801811225868080849204705441859105664948039653986722714354940941410686784948916936213417318953574086609821961649007609305029496977916873440356977063491030736996785241653241262171162950673703965399497},{"N":25874692591276389940909836821933328634340387691760211719857424847912710687202655208899136151842265948895002254373718724704209721944297143062448179072459504026936041473424765480639475272190837266572978737262449980766383982513621598580661341958135147571122513631091491976191663115339463730624237942100977649124658328431032849468551008597071378488661492324861414296280692846039598797857140808360770338990664282941023358641770157837364612463858095463039043959476170224596463891235213200808423306885708639894810932553685021558027739945539621344374072593175483199343233185955959027063970833388545231587659014590298587532269},{"N":21093015027631740022404443614096248522776233243516651444497036871175728958780883068858760981924585432192986275662870128643941927265524238598903061299795143929360395711020210769824764384718922898979318706735662563638859312024117764087176816929100038836825165997745175858151391747552772916358596447916581236137266690055236206686429983418915105841208302705945838725058954761546083763560226985859597874827308926656876419352353487645531847757035757295720869824004015071252605178819856102760159009139713396577974830023684477215548955933062314225333947463154019890073099705030557644025494887348484646782031863159015194484417},{"N":25298229297396047246415163429032546137139715727559844391184017906947304850232141234045323209407471473714145852636924268416866274482603754141415609592221706725085407059971638122009913495964543366119323417218834638913881087432600102264473788528537095668778412431377856067113698729914757144153775835786313302871273438949909936263664301138604696985912220658568672102041006541952444982579070062275651333990266954050520365848194152044834016212084441028573044037025009772616765171118784908205140185837844772749992941537017860827787097838183799078426827486346760690086948873222139803967157701952297751113063507286886770253809},{"N":27142202438632787162126599492908508783692765215748557510315014134009044742375492012422395905792294364201376442258017321008269356413320158807932162865700040957744157446176162447390298999320446062496836729102114052332958615915307193716216287036998207324413342337908047902088094382893405585342830460716335897834006040665407645344104524772021574862180664953364488173834491400964015536206179143781066229852877159880337660767454184922616386524557470530917791514588890903382115919687896218697262329973216887300329083882938499296413225108475327673886217363092593458630101782913564451822536507792690041998191978031482893873661},{"N":24506900410165079432913879286738242981557799447704277709132563752281068885918764244597103897934251933625444124974453530023693766922128717584028552755128051187819589410024704161034785358235535327695240184593017832269373629062497324651346586921679971074785452914954524453931920025017233873766495332551435302696547239605953737313669053194482788679487077465271167890491044626060923037626210805459313170671202877996680415217025953459280403666974895608025476083146334864242075064839862857242870450430867849337473211116054259839281123892458791925377357496234454799948092884977174468592367921171996109259120511593665944142269},{"N":26694966767987840469949338865344547117483340362831650227215482575365406012636774021468648984974992022743149425563486792907591668251920735101399223711217247824036472514130615393737405150133409306326610912172081216216331513707092964488994949651842782342704418212963772590286378010081225253538245220740244206602153540135126863052186543426616293649543741875882042173380956119737322204906042367710990417544800462728321639324791151406955584010061660628304199783826293959912579926890912970052339895938137461119473504729752401310289221600181057106776643382986556174592325963163204522372078262520351770361427042538592078722253},{"N":28161406783438289776782541515550232234219338732182263528677255680862818571394539837092411279908340595856411618560352096707955778113841586575489526111758509944691006867155143609674220650793817498419172979829028602046249597147507621299153669762040424244341554256616377217119563525915851719009321686306763607672801085326365691030132510560260181669852932393003570340516931927914922146799899039434467722922041925474101320996856938035131446584298134298675299397155375412990353784006913691603024110559796744887732721945933471868150638226543773483734660294313186275340618342717882057017678734282256333631978096376709630195493},{"N":30290385531723706663194155723402482345164001328034021287910161482488063429892351584916277391109894294446801833020074687889362652138426091460224301803948089690115686705682426193759251182110547546779254274419781083851169949275087832187538168815749507922889270386625094587688358817642053715412200458038741309360104964334706289126542952674791148655002683650712544232003067953586569445443104249283623297733191839471659254940888571771772980381177972566220724293577306168494057111878161156955456998298372496716136324267059071403030493623531599851487444134766104137251811774500492630476212318493040236485031236879687941684761},{"N":21891762840438596060416034930044842446937758373617708235288562429502315391645647044939378215035677465574183685957522821315454029977571728750605988329881847569313802549118091978526315133726370633285214423147938264418314863217805659876561184725718735591303337902948467582966199323804114988231963307083517180657041313131586070203747291724798899561367507615511932716092324516747320587928666160741969956121773346301706809405054989477031949248189136343469258532041255092588255241987397760849320759799542054627513230744643622791455964220513319415609245199516100422991698341556744298439022451385568791478794837569530013904689},{"N":25360934335416714794999313991057897528923718232366653339706494176825638906694689891746545886915964196582662458688535283322287088397853865709093712398485753916163063777301385991907720781358632265326870516346689492128442283774600103789825609570294923480202759046857115137927714980847316960609776972337028789163184648676367675625026306027140091761009104192786329465543720196130052658782412428125321357130192023653185727111578488774341366834046035305712205910649341950409228079277410881842097288924692206421126356254520404943323384573694119449632324221088061482676921038116252201661916622983158849603411299895152156469481}],"ECDSAPub":{"Coords":[92492306118178589821640584737240636977398594678247616965910942704932180187323,27954057508764275913470910100133573369328128015811591924683199269013496685879]}} \ No newline at end of file diff --git a/test/_ecdsa_fixtures/keygen_data_18.json b/test/_ecdsa_fixtures/keygen_data_18.json new file mode 100644 index 00000000..b32dcd5c --- /dev/null +++ b/test/_ecdsa_fixtures/keygen_data_18.json @@ -0,0 +1 @@ +{"PaillierSK":{"N":21891762840438596060416034930044842446937758373617708235288562429502315391645647044939378215035677465574183685957522821315454029977571728750605988329881847569313802549118091978526315133726370633285214423147938264418314863217805659876561184725718735591303337902948467582966199323804114988231963307083517180657041313131586070203747291724798899561367507615511932716092324516747320587928666160741969956121773346301706809405054989477031949248189136343469258532041255092588255241987397760849320759799542054627513230744643622791455964220513319415609245199516100422991698341556744298439022451385568791478794837569530013904689,"LambdaN":10945881420219298030208017465022421223468879186808854117644281214751157695822823522469689107517838732787091842978761410657727014988785864375302994164940923784656901274559045989263157566863185316642607211573969132209157431608902829938280592362859367795651668951474233791483099661902057494115981653541758590328372561362152685521767302904317907616236945181605915033352505786234153338852614746443923963531878099335783755300345859575733544795562889515367597141671427383903058884230205160853964018777194675886923970694842743642202953334428976686306368783665524035023797170820634457915032917016537520637995417310013202752378,"PhiN":21891762840438596060416034930044842446937758373617708235288562429502315391645647044939378215035677465574183685957522821315454029977571728750605988329881847569313802549118091978526315133726370633285214423147938264418314863217805659876561184725718735591303337902948467582966199323804114988231963307083517180656745122724305371043534605808635815232473890363211830066705011572468306677705229492887847927063756198671567510600691719151467089591125779030735194283342854767806117768460410321707928037554389351773847941389685487284405906668857953372612737567331048070047594341641268915830065834033075041275990834620026405504756},"NTildei":26101397013404440939950108603288565551073409553356897393691328641679505760230621741096317929709636865532238670826796537369580597665138924272200816037026280780915781305836081579178356868109017075793286763556497902869947712856535743263321959264839901002581734771178344662509473227839268090064000382806059250315977679226653239225555007655990623485545590336008766750972486014525144801720879444739045959169483687885427725508164188831961197284042818573448808100923870021600896976125650269597381009562192855793477760166114366163011349461311146903814241124631772470784181050979028948750586113514587005436500903242591757553293,"H1i":6361624891550612817090909815430156259585522002511378700573226127309539860650523892977168943678195716824260472829831132024282728135758912178943090813161584286046605117495775878170654691942858452263763077967647297167266507685944611403131069163214134338169098006751105941940463654618427873599267528041887836331948305951890335742121311832653316741398094161561749334956600724220433324620401615490879450816097431926849306846384679126203940987154375373597650036103822699248044107851648286585837187416880739896147553285981829664828869063480707437325000260106329487862878699057790666160151383639198420965781777521408308842299,"H2i":4201765615355271720665237538919680402664127861292891404309962354268106831635826650331041297039291644925592311983403700464576600435518882156854904159089879201301912105368413055078865795374091914623189759593456721300785707753873135853357294442043908826331857106210726005526370024055346666586491341046296314798619327898858072624823009991437876242325624019938022318176060332738994176297193724805935694309014605422020909137014676945305249645201662101488974241605863532571828450201507584679493905057922784236072997143238879363168245889469038437561181276242698369654938178116001428367837409133015026021079614840533626761027,"Alpha":4444019369404276421238041254632474553085238662928259086789078542992298567545781498051703294838970466449267650380574275913665718919756928336605485269857423068493659299437161194399763568650812553373010300233657188225569533698124377866160602316037919780440062132689862703725950872830925417061455578545111645625207207337417670925707543829688344589638732079810868013756303487783302299670241572257565007886618770126185738890684585077010491543310790345040705143023181452920207962285595852646091065193586490313162094856085519457980851806210967575810672197763135778267454419280774976321957529484908484216702382125298782440301,"Beta":5658253787786953134283325468784183961301963265857726971821062750069771534639440297114244967514197810389971330966768871947778622815352552642030313191468621023113723877157609486362984459693990471806440595068919485722355164724416717318214465402043037816472451277128244554611899855222525824075860199210334115974550715867089255354565931895942017689425962198535216326360377031214413073867230634760172798213570673763490327134822393681432615928857053367331003947402583239354074969865017219673497430632314252175974413189200147860495945751324951452356547627380952821931363130201997270279108205118571681709622024987430385684672,"P":89194222291410539565067212225809625562504476211560640508139359193159376230186216534720025900524282907197886020001409078626448639742549409882830100227506288246425438115838596520950348577499839733982171915242765034102237408093957155583970801162356152333928634741213265719731355103285731507231411533686494239903,"Q":73158878296307602040471228303881561292899977962989573705225889651829805826268179466601243365603012850767523233312562487054074214107500964468941569777026781026720238125159059972854000697236243198601253617329909585069757470073947555088319522286201661874937577823616672040844412855855762762034485193994108906649,"Xi":109680149625859489173071759471383900488345899774799234651830191016079849871052,"ShareID":99910913777216787121500121711080713911605201308487494263101624819470958719092,"Ks":[99910913777216787121500121711080713911605201308487494263101624819470958719074,99910913777216787121500121711080713911605201308487494263101624819470958719075,99910913777216787121500121711080713911605201308487494263101624819470958719076,99910913777216787121500121711080713911605201308487494263101624819470958719077,99910913777216787121500121711080713911605201308487494263101624819470958719078,99910913777216787121500121711080713911605201308487494263101624819470958719079,99910913777216787121500121711080713911605201308487494263101624819470958719080,99910913777216787121500121711080713911605201308487494263101624819470958719081,99910913777216787121500121711080713911605201308487494263101624819470958719082,99910913777216787121500121711080713911605201308487494263101624819470958719083,99910913777216787121500121711080713911605201308487494263101624819470958719084,99910913777216787121500121711080713911605201308487494263101624819470958719085,99910913777216787121500121711080713911605201308487494263101624819470958719086,99910913777216787121500121711080713911605201308487494263101624819470958719087,99910913777216787121500121711080713911605201308487494263101624819470958719088,99910913777216787121500121711080713911605201308487494263101624819470958719089,99910913777216787121500121711080713911605201308487494263101624819470958719090,99910913777216787121500121711080713911605201308487494263101624819470958719091,99910913777216787121500121711080713911605201308487494263101624819470958719092,99910913777216787121500121711080713911605201308487494263101624819470958719093],"NTildej":[20539613942852364097890357541124859329931817468396278432713468646303963073659662742703665137736867247354367523800071318544570641421320510992705137876681425752810096966415479528824625129989063402576946505816887222102561441464103605308386975248012283762854115939987945603503283072741824666735245204091384515192454349252950007899626081034649919068642018312817079235168086885705851677572363277983076857313399016624874649811334825694862350059490166759704819411086564625186038339099281295128259092469609539775245598320922394808913338827772001777479207381548603315272620456484970681705115865233047669675602308688791376160589,19461028678249357721701139019984545699598216253588699892259672060166427273458875608319855785678884811755179389274380053495578644060470229307987007292965327985966772681212738091909180148035785695413643708212165777295662698493311553457174395686873169155288384255670661532430410131045712913078128214239252258473814281283319061613409102410606683119900924722782015902970301519339718368508022893331969649513655635811522767629123667744907556474126774472529158147258343482417188228144974952598132795041139358631852141986745214674779692377899411672630850213748161088638857089501019216868292821676374914063004957409393293909513,23815206664659393600414832732918591362081086959256855451108811883313935088830793690110550688160373127903180149093000695761674277348327575728255258492470452704258920461298225437641154249481888087192237143947805411796310656512191138629555279666557122333244803756577286887501632314162770617970064401783626962319950524158923845138939649762251756759762119774585338772559055859463599094869423262313306255644927649977403492926253217608523813644206820059309357940964633363130901166057002430269910921882664166860038861390305316020579398429144038386189480114288127704265879389663380565983482028227028306457603727009698486364281,24531363009049563762536664273685630249930678743601473345646756718446749360580428942513295608401046098557387011967587876621178423418085640157221932880387840241062539585907115950101921176093340357598786734576629107604766098059509560466283874031181440387973563913507733219768477775440248994272649062713092103053254889978195382189063452107439308150731662099755008823588080977928436274879799764825887538020606485093127463680041134931480024720440536560752357773730443722294290727915022250638670491342013254556128005158924861347226548459626859027825687870031912255326425000561908947972742109607669897905187712585858898757609,25485947141960036800495601740358196336268148055632283852581334267632567089581351729697672659186150817483946028874699734841543360085445274610946793774678284845142698994270979141586640525566502581978495871744643885460820923876472270768798335817566781711314773489485670479771252073613546268231833675772584402239718946768734191504723089294480532048176604551680713541748910822012363078082926628834536634899606309021451196325472880525430322895659546741570135136047631868000597393506058143850364801619503318165686086392731222189995494225633540472226098357551602534472541794408218767265775850366289511546336446350346021282237,28927199961592509462716713052933904239681693743133323458100757563361525410670677174848159248824087482997906403441479071298957717300803186875289912194352025314864665854179681659546207985006650252942140268140510157106320849846175665072784539119695315757729095462689260495430463870222739869312073694346079553731438032339737072477343055235278557275309616493517920166164080693605271556685355062728635594753076381152709174590915306592547837200121302421882042327338955791916538647734045471143845013412592155994390976714634271247514800401724247381959070976404354024140134277339724455784411154537706347451440209596089260579033,23535119694477523772171748044630208131923028017288499693412795663706886468394056769073862998142660508474676105711590469240299300182072142961838102383606369450702330959729879893242049940029310408964084662077585876233411878169942718467081776763994846585950049650660912827541883992039288017630464390592382481783566823924532043610685633953209522603678841504652207254189077646669746333277037092923165111872444873598439940966325805716105630151638779643981500665152639984434504817034412086671254173379166038071662889121653550757613052820175939040916661555723756176613161036717523938816196299007092417098079561970714605061629,25950783447263038071689830748627856944354421735888733670277679971199180982562433131778324823115329151828330351648021612294094370722267669972986008148650808031918722892417970047773133521052009921040352676366121022268583455702531977371124075420219730460605780729481918672698487964603151661149289116143779941433746038933525309985350586367303720987487112290090195247099032317451409521767630753382551078895196505751734814139673689437231496521554705226938471456297964527299627857211400740652357956604961830754401147898467475649318148547949522809325493238323065337997986089837089904293908389128632840557033917922339991780941,18687318215344566555182740902454336428592486945614858718824661784376438207943593936740995084200358460316665071770681463630810552799361606949595415859491617650913620153502889285378972038135570359724693463761135116433672709408902151793979112715679738392883186006369274528906256519536716049908878346476950103274343269649895419042195937774381514132210454482820166758270346958078142742840173830940449171621914508101385104081796180941351697633772994457709351610367195330318869580666697900958479010130985251846923421963647318437209519428820003347978947799013079168765159404172743072632243706939700207639779907975142224264481,23171083837957860801722218699383337900446240030786871268841926233540016534306722256418697981846104677203759841627977766724259030420015851980511088229043403050763668171722648141766116654882525867416891436685059276174192868946692072206824573955678962077288068058032958478942750338128252470165933443869447212456023356245726416751721989152798706366691818486325734110680894776063318626260722657549472271184224308146689662638536101291469177898475337027531732897213355102104990685266062044811809193138366772764276162181116512200063463469172637189164324496242489479899844513951546392297220122152709400797483802836017803985829,31343857270714098359641269819793471247744609345771779520849062499842222751853736635128030263011267623933026775894009843057499037409921342064326054830123558338476304900840753732976691522721379417037190976719048367738172877422341695489954487825668390415147795382659776979019893183466662138357984500601883268994989224933833342232607751640920642550766835871191739404896219865225614116435580799461951708239551693029017567595268404121330207564314786956323833427106966279493560190075571199071036639702485305576334075428484139050116713328535867597124971991546934922511844853709001583656359284723717084806850145785405536911177,21157487427733991932564510362138492162446873104287756897983482468142107066461483198236006898398559574298806811271053872211924774119515269456039458266616445024300383802406544466004007569246261860103312006457776588799344222340569710165666518367783547810282003032927364478322210948885423703591814633243286070072754280297773344097615910071723846039979528910869815670975142743376293197136856592859188733532786144697373533341877747464753616005694543102759948736736802569257325101204596297349394258616025918915521692968786299735438817719576226325356937526633071323693338940757362235570825853130085312301448111119042363796113,20871071186633559430638470998115518791893553646420368867902204568431630269565952322291766136370093127894084798814242475456617969102595313205728405129168253735048454253508700456761223106599134617920774227174015124829476988377890165462875183814841087993485125686632410376362585538078467534668954228084080919739417042353928509644795709201564083148094079836306167650314513450129297783489119015593642581024870311297891618816623633162063381775243950740681581620150958717466968747843706102214690157071025611480716612116918336154774385432247274600064909320680551901771492165221773721500541614228617829117370166464409020423677,27392140202372139560911530190722295626016991167776777076251374167016701252229100335980281077736021393527993281083564981442696373714433732500818431355034758384480955155409564373832745499649881975977124862697809360957420580753883129965594447943274206109113518479198329538838000642865155652137973709624008263285324174285285129803357738290385065522262059795474318914719823768887144641758090777562619592046692917101170170722723905514971631800061092086777420826999668590868568525034863406950714560799453233548147404988580929389926995856613912328981176466707497680180241272497358147647189027922268738449537259460751070153621,27430458285560064975603737623690566617914765114564307656159371148918349993794669623672608540855772729568670170546349850367039352526804750358257162362490778729908291097260480430890476823722553654389178498566668573496227008913481934125881578164602723285712928871252207939941804689355173665470036039114037118963971589320342018774107583274314158608546842149328506685304690959566263296291871998398637364399822435359987280203416832697098234360106966146607816540746285266790106830402077656904149244001383199485864465648143588026246539864484902228828598281873311925831114015086450712030764672165915248196209070047454495085169,20958576649034914977467969756965874238364659071947031154211972997487243461262394795340258789930977809611131615831278870909123144191655991893039673506539165135637011485008482874021240555941833074286915507794874804218274011487390148860550531668300157069443584231888571925159473970195937554740938933226402208131160317818926784959057391389980505131685522579677264162724011263439981256344785140426649255485125637348357522582511064347878764724812085894898146080695383734063354384186594813474135513405234523117338489484424618032520881618202129068318264606277435174234229102947510033247339629069254901430086639327996737230861,25673210614761004254141737312053451635018146154378993341101985326929566270344015265597835170941666913606119762699769929117810862190840467973932188558749547474174367822508601158829928161219529997833862214002106486508027112865708012732033692783629855485545330232068552007350877531730729790772847199443436084419382562932662568511421420283558235026303217907581598166628555941188586096538364407553738314729036218493332920854764055946289816665260688813327844579390598566768671973314358968068459214729157676432241630688442073088681756498136814491310636028421098965714509622937097403466307515165856202257786336739101389349089,27062431131775909264962122516003720577621307700606752850978674545503762322327045712593154396229756047740198870458644425173406714147601486563284216353367017457813364860861671576291918230182938220436949095109018225648486931358793025228571750572403143070647269508389021099989559676856968002395615757641794675119572488971947338527037552287756390904188517823120698354616567162661395526975254448758091053074808436661809101512025437321837959528689272191238705432334775200965152419124620293521962173467865862080429867958898040527206234108561471429991355210673373595922083144022410446012714221026174220695995286555692560595981,26101397013404440939950108603288565551073409553356897393691328641679505760230621741096317929709636865532238670826796537369580597665138924272200816037026280780915781305836081579178356868109017075793286763556497902869947712856535743263321959264839901002581734771178344662509473227839268090064000382806059250315977679226653239225555007655990623485545590336008766750972486014525144801720879444739045959169483687885427725508164188831961197284042818573448808100923870021600896976125650269597381009562192855793477760166114366163011349461311146903814241124631772470784181050979028948750586113514587005436500903242591757553293,22437602225740742482465534898349205983133213895660550238212001804732032977697798637757435728694311659299624886491819969612531644822478331097020027346346025174540910579800256280214031292073085792970245723432769912206355626120327772649905875827091190500315669126429992547075064736037570537735332469814000462556933603719315364923773085086614780916637137068518726889173784282955430621992569759561719528189938429235007732504425905045067985337249988673084527372002559031400047880307427208848753891291386460253720313523072063965808016289774609282102972264056704286287440985034888143293816594327214769326166521224390393446693],"H1j":[16370062914568124684409954423220013634799944354368183091925443712820668316759795091290952642141219645055533606292548565759917746455430426634828957426644826424037530474618159463204943752577732484149675671820306363344833458247384057865310742915406677379586789735200748327711872632191061145184949312294612467345847214916930759229195852858849386686352293049987465485866498220082468131280135383612600619493426252446949294373638968518891137429993551161437309269629260378927918725566711632082553316166822070110359114229533322390061282040482480263995079579444943917107997110057038662405191417861817663789094790962966996587522,5792666313208572350705907594949414590804636531753541567087068453778543363077542142305947911768781865374122070750607847515026168979710170113788718287465368491981654823945993941924700096393523941715256095048825025361038086570514643251828085846380954791657627403414038681940866434304045104130214177360598208974353162505514170835103706979081795485247158115653501838694614859268884296606546104394637012764653804556264770973741677326601115655746125293204398034469241183574629519235451142797709676366285591723984602961129858687877266469708766607187000988412118886394000517917001485137799190522482532376333362935442751367745,14510201356793997359892744405553071944121896518459738320470368478827891282273167297002903311912769777071155241288755372185351193850631471716718530488323104261827697027757019895835360274243188719367049075501436153398857359555924247334095665350350441220453460409146684994664351725204034521761578947269005519140498383255606322844603919000682223940913285551513356600061526959181206093504072618536296265435830192715190515397064435874311583709516596584871136822289753837472532490128304199643440789002058080030111113389709287097531544417461853059085059819958060220257218705882557929843952675556987949500595639655528439052202,21994027187251658420706956116678134303619268245311594874227984400819404446053485122189884678892175444688722527594580466254690437593853064923544979570444911946308283663229116693350631331935027065689358169246815279257122823014594309629197723508317910829246255814111959552337648906237682616732913305786178221005434606679461852547394872592127050442856550471832240167936976142756988960345619830477159914332536955389792251800932867389016006568741180137556936582683389834385412181167798283357296952856933963222988284608097870458140102834156304710781157917296313315513842893014212063887070100364867105131178923785373561146050,9913834538682656788610829579771569556624609911472542281771864528920206652057360227595914694025069327892774241543292898072673087864732558768588752951687639831868499912733997907550450742144719953844448973554109420086839278177283587750852958353526057789017170152122423018814264172807655239353760715885145548388992476483731471865364270428702324445078126354834888878640191523880163270112743069852403951565444480363239177556818094412397417215136415082364220806171351930690164376890892251369372868624028034980680685551131786332553623705883769998271596791035214982761974622986462384695349153129828098712177799482890430520965,15464554656029222110560140639422624868539470020281691165975400448606613120973644407534365935510334228227263162749065335291017684520353168923100727746351715681760916446206803485743114757577242723665933043744987644589191843035807511863595701170012104449542518101585729174897996392297770818633483533801844500665798250501473521227123975005972911918718226524366806206633841675388137041998857549215313632375036761617534744890091542919972307048750757690677067439820416806817051344016166652866968067639055986253789416713411110543055264622333767216550525033482750914452894139691102713436731472281130988207399023815239852528906,12865788614422531768878171769038267076266208200249164027644212721909963715015912538682157638127903293282023380796412378159235431043017021949518573892381565899437599164703723050587964116914107635838030249942901605297513982608974593500166572552953195544515492725593747884602852061628830280449190167844572097543184555448060083835007200101317266753106995526429573085540857281097156159258319440414895242242967023265742835942344738184941128584859242462621792495405423196954908356769683815889035326257091875874458718611430785903143039161526479973858541524126951528796262613552089943663340076548393182371918642954593889432834,22194516202811321146792934079465991238594712937226367504517257988113211333368349800836879103947252405610400726941861867633710543721876626238467090611506859331575128297406631557631820626534381998686705168632059305910804423292984195597625141279765512951234238593649775486094326905655122386938572411401132183960062730500896105597665702000968846572795357957098192758080717128908256523579293163137417423771381528097786100281383788052729825837521137512379280310081930804124457815661946839040621474089357381345723789618079958299474682840114875558952249988571746058484000722421698440994062460208554903525444210802321182968014,2022329329707369117437055740094404969047484980501833952214571687130852032499620508208708908589247080600189902502365407836277381678968110704345539053376355432754797822267575827372488857681103447936055038802753292113151984972961755143427625893918328299356797405969999266508287378495280713821635381697950988327467894890827305051792226857027384943282520470216088404776455333696749084292781033264737672933515625823807581567568754027253581653106384383593181057349330506068884659072076739226363616897242406137010778123983315619151551375977509919335513557274798510437948502408760645678633359245877721858614575061700591393721,21638702445456858422878500352234793329413106731788942261751796025224145517964611169394617788434763506002565806620170893339110273126875286455095506459298086020278318872581385674653253080383128797980439557511752718258375238388481802546638936192461482797150514683008473213407715728694302414916863995043974867827876036585791719812271742103323384468954527534596036617313432433874380308883492321501736879178345427074046787174556058119038049586737477628511165980047288251497278209275581664775606335268904384984155864116270266473616061700061527150495070719210903471680082400487754898061609554671248760480063619759950744280907,20932768206097680299943959313782719928339866139959731166252002876096405653871733170637914957728294590217455322823662941811142831487382716004980657707514358763150029924714520812685697751484102120909926147024006189544048800446501267477163792293393919588659127430522309503845365000611784195390022621092266420671288509706282186373855655358090019051530324622779193478505342408854462043136412488215465955955421082850282626458587043647758494935495915329050933653468179762936320308005669155322055934931071589853638981754901315764484414249149121368560265856082417024956730272011998498550756243974623835494966366962683389714964,1365816667585940330490355905311774458514715320376130020996515573937571923987574784307504874484515899610747050162880466334946062918938639620242137371098595406424267003818882220942016240927776918797542668204898851284066695289242978919397682088055368818116198595348273129318762376760634794532531433638073562846988038755248023571028829475051882101071203979111269507596248527906600986677728810751499828436067766182628039345309355341295172437424660504415028913205507139100147921515616240146193076677157859750716375066201587358526136840334151066553547201088947345861316322897488659331106732575557394540428972305438213375814,5703448175361065536885380258834894924349694750000788978424055908887487214267289314410654116737467233333514153490994654420800717947051017245903088635547080581089891657444714373263301759995815635072257679749046151543038146531810310826817366207696928190231298874979984114964348460891792295427444943206125809938612729939665048974349693961742238426880015130297226114935093282566300228257419316454068258492582819117310017835605391570376283517758701794125467889060184214275911038527696714000045849219024045243597506828846590195831908281658454892131533791810760325400211405258812142759529523572815227489710851557846638137542,6412242406353564485058502679404605624009190790593030266854505291800626778702270387175472290319448965303250433574173375628339895100997329474893279692868549940279796264731093585208695625011062617868491258157215447275957107991387222489580499373804335870682739788296835432969262878909434810429803264643527538555130662379672012787064972208117475596665593916782896686056579449802576468324812730306559649834202797329883549294599723290402017221639617907711497472325019619452322282704828796586508386419927496666562295856731151167316262475184222145101211618002798513055006067228431048839763646095282531119806559583105533794495,12506213831497706601305625665856619892819919408470741644330076368184175310515183251146177621238406207206410185643656979107225155831507800032694528257147716038515158570256044209419514879851010106278924359714862316802415670557334433034976750101928783991744583819411313589306343712690219032368416678985323530251239318661396466801994308940886752046080901718450406046375904389766893043894196541576969928137946704159382893563356338387889137855413730990126192021766856444171515497507122402917749807424621383187173538906785892654668489198127757882153223185090960714890345630801099413698632285321494907662894187137142803150791,4340320683992731212484211057800765907410470847269768304639037529290512671362801376775768288042129836088810539204858832843247178308000345604701431226310915807542068901686097542648829915466491213307097734259829414895234796525272600474326857346693882386640793824277606043756669695477090601330450743232413209505539149906338741119182508496705355703793044044384724643256986023764031438551900073624644692938223394706241422593949897781383635695299729171084301185179708550600098470031089086344919627503113655735768701217637285566867914251954499504690075652022468818725559007318841314414541437592229352428286215595483845053638,11992304082547451264970842283976418853821301172975086658682116387543359417074268643442593212371361490968819128789238354995117145993279593426471336648259583293294202599078859260437992548184464009386152763827946804967424362206055435693041324410893236957405711025923054702040161696386453571055246924713260145964584750230359074777621444549946362450468684233332414284037283955916761049858000878784786268023500095161975906495439332741618288811384519280375489794382891880648564800750663555801045203854227681083222146920912455217541211811955477767635787030014152643158711960638325867606918508708678622347924499914937535267162,14695333877946105505101457937623624377562698430478247685331048607650568913937201633971254630714736577175024535322415669442798271475956496536083972430246897654017678266490639701809689918981250971730052435032797344400248226649579239038593902835536123498617918666329121083751772876090103853533035181736615043011673643017303605152279678650202512062770466963460251942403425462061196179491356440328364636048438335959347603428717042954470887883300891927932651483741068303515425618933688194621659816079976510221005329843899476003615861655015952079393164902282608831513778303062716347528913475870793908798463564832083549613643,6361624891550612817090909815430156259585522002511378700573226127309539860650523892977168943678195716824260472829831132024282728135758912178943090813161584286046605117495775878170654691942858452263763077967647297167266507685944611403131069163214134338169098006751105941940463654618427873599267528041887836331948305951890335742121311832653316741398094161561749334956600724220433324620401615490879450816097431926849306846384679126203940987154375373597650036103822699248044107851648286585837187416880739896147553285981829664828869063480707437325000260106329487862878699057790666160151383639198420965781777521408308842299,14948927140088320458060089936345715166494298631495857212773926944790409869483957673185876995292328343640197788589621807184518806705821872810447516194927678801617268846361533345460325613772855110322242304569109406957894646727384216069315325052819333705539766154972989576988248927288284161530384846682668538198851543196833452065614949748530253693700328342501577900059842225778082026779632761099626760985225309957646536118173500439351182747667021029407125807666947346322131872894915154624415940708414296769044070685030466034270063053482191494419465005898644603408406165778424189251953592599788015054586521957253320449350],"H2j":[9653640790649475435050720061635061544335995170813227062007808546473167610366804040613054457009646767723479128021709179513573358845884462519136809844401815066012655857973373223748942767836422506840658738556503260986697250346171921063441485400421533124068250604530993514803166454504801884882297625678932746326066096923436475087338628767636689481829832307623108408425959669915171224014581673426602770656342925462023157550194457295116217893440581116140543598050947318929500123378985275492765280831578803707538206440354119287576298034238031692982504012470196898579719660373199491817717767711160029710911173725338539566802,3578111860663702772408903345930659472256129868015762875031051677614699117364424442270785915866444756532836287879751640816575659073006676007210405202315496945346450727441553016187592354415793891110773645408147683476571812485850037389853330648238106038729525075512542830213816094853869971661719959033499816133612736102442725651388405183329714325258711655979055386253406319598230253658818466953001815116530962213661362799968355793928849708876651937113231862631691372187008559216884922263381652908899796744393080985272287681952842592674663712445064149288160957033524932550150413325097150870149209345404214256294282382085,2562656890570835296352376205216590519360952576353253013086344012422175466058176642832419040937235521572328705583208834436813588375562745525224328564354560731400723267162764903064018742843839822445601315505274421672289602485557719646504320106522113645676636456687468751723898215955665240524139836668877382766583475339565598073690853848639545227831264115164596396262772422415214665834769274554577301336288865874066248890243346947740610544045667761548206600923673948174739356732295677551749947395385332556227074205668024351973201205328576603362256016900712683688241615565934460363012498930253514800348031700419220337084,22298685304249156715841839507145325522077048988910268345524279200863227356693376151033928569980263444962701165900514081299580440300365488019578288962534096517468902687907593109404000193096117803450936780948162440311950526862133749440555125530434273281017640257175046682563772712146188162909037424635371282116160809281350332585723737917537784267577381007869736550494661878733387948458251550312048040279754696568539248453484809390032249968377837207868808482658171733689439009562188880777607125039187467565549644537971596666666932158369857160883674108786200103009448463903055431989786220430290067137368612432640074310237,5879475324785385886080118453628099122983640585548725925692818787221734315336181255707999432375105366554548265736590343628955580077952532008988837072008731794155978542038914506112861039350525606157951017828660604272526605818549217659336563240062224484914310161520768881507503977620229908361541865095980430141394883457555144123820008061398004875781145432780438239985999952863196781468403423593755390719871396312035325131303835880979744451815683310530516197085535308856850866798018523735074120787646575912319226234213646284739550604897450763442470406797690674949855848424274918433854009972115369882751833585035329242761,18385446607341413929216752317617998458160849115285197433981133872531647462267817752048089105851349541660795002685652456000086108157981979426453705134803682299691630928200421847304354380350114763235863451959398215394354125874494984531309790405988904217354164073819568789120760731377280912128364362051769093741704293517942028826498663326655241508795914202031051398724638536523567800437872676476082333745719105291491676453403521845621182329449421075607837301738332926110019535833222421409565228043580701032497151738816862657210572819375918881851411438625526045192015060739626198734346744421593858157488507552447503219157,1543023308301318791291636723263661645234407352972693347930324541592073282303070472660827743672362126204249434834670307886593868303926045601951702434485524524299146190187978789568968092026789881246345813079894138764374868096047892517784410005345559357208978859029831295378789933334638460830863012154730679683049737545160281582305039520027158141403805442275432519516975114987511502563484403828987844187725357101956491714139410763551382100998178318863295224089354110436171289236674317711473441156004575613857935802947903186710273135122934512388821226072049093290647716152026391828419205457729234939199662889356527012444,19612969155814925927900736991694631498815639143900750081709470615537990112217002271570654324774711607889679093067885009086620212727925361021546388555967618760690930383917718167829905900473725102007606380323545403188303409627969907029774876076466652636827981089598601596821629485556381455948439528301393466043329774616323471054547330305463639720319551756652789237846520745512886328152641158526571443916940675394167134193466655448590323552123565655514390433855054114283235652222186673800138041449545987929749641868001910765212175435331820335256408276886037716378072029444719891008048297796893611911457701948988529229282,16728597479991680407332164223276251930971882378040601546182090035388885277790620642130984559023085396113670088325023048100279567479347085329073035696608554975777409036805727779421519384442869313567486101701856985975948368091166211269762554257345698853374624187196304439193724792774291722910128170261256918581442838390388813651239625403911503915460141004046718650178671549506593787333200145941149923809156438433492770338609398675185696331933468246886804722117355530728325631706711888199439210221397335620762682713255422110226515677047306270190770133307509623731091673964502293431264279055367772707113499782043802219072,6959317283624626561280838810011851848606573383456333866356771642710009365943896928686358713606049305764133589953562485262421030190625379899341516940088176438653144375343629199857524649360799157617467464667207079997090732685762910728717721600193091207478294785009859545546272657408615665578978698966309579302786158306046780048259033960048367018506262121833776982527433736628482989970739839626561164331780819203300647377931749431379962789021848504353274218995997754499900534324222498419599756583548358913120017762065234354717544865856293340540081744252368993926137398125931373959455585431506453093937785431907339954440,11707820384786665143909181917722140695066077204138675859555940823963085499198625584153264077484611920625749300043796981737297557284495008476240804003977980903028035986014301427047695461308987163082644181568819427026377861293089760745032220979974314071873695748444473344481739404234865330820136242966321355292830007655295383627072182012764804101331409332152687101319613845603099019594628684448783718018158413013589965095889558760502141979036830513073469713570347578185733951700672935586145889495063730457422516713768592535269075934288536062686021973569079600458124449475763651523966025703378628943004868525425132768470,12680113365919882057574106113475868522128522384382601197321116786250024227710942753687346378669117549887826210207932325610070970266526443555090342822407043741408930676918514338947859254583933603158241276952467805479024344654828575004834480980171788527657050724406198542408746742354531228386476751247072501617975174749412587537766151828306153888252035411082379552917399551115964687725743020641384211728557413837203373250893065347048255589312756928959773947595990023044227966600250595372063312552514516053386563033360883348059069724261103859193470298590631028566611086928803669676829225666250863192855787196720603673760,9019657743968669607069997647539968262488442864840563257526073127843215521457164945521996034009113740811008633126128201485876365964359243077677187550395794512954090076458031575481109943534530172796807658845833964496790520042423061347000207701119849250007073432625973802817311058171823571086584900654526615124913824393095137876668486739795620319593113487319306758076868523633806281732675535191877729151172494277333403640038019691517232275137009983348569240826245496914996509643617684093222096189728055561573909735610063401084000594789204303691795045753669664876756897469727730211469836756344045393712182476806348262481,509727692658127329234819348282810282823358222955712460979035976368760532139665502509369544837059902335508770138210475703837249689840377266421270410968940058538125244069674567645496962345390684467242600183265156396927471901904730403435725549974213712745153254130090979413745442250230122176329142735628394058559735078808655502950813887104168441824680204081093532561399756958380811786995754253778833219233414597390819387529718886819478101169481249247654168746478268826094117295037052091370216680279456693786586815595643437522530315484348520350527079378100131478937805285900851443697897872168020710497135465069780807687,3842294189873253197555038084451026657880884971357471477404186912118522652991181539287485996470843289095459960588932515934990566949413638625169611068786524327230092661471599333492933504858312443510340452825109814219748343465626968500133039743956522352452046474898271016421645025612565409422475581907506677274527441400119913285024497410632467771786023570373229380492185234340140113773065511943229164821322784643171443642045254567266530741214826934397811463635644370547054062567012016231228876473774669826378368361454200858389911185989849447377758286974943747417740672897265471383352127822433439855380640722238771424561,12605457156020973444763168611522695283402376793806466187139735133742095649198553225011255516233464381926302993187553632508703365300132776800901755737316341235931477791227746456204649162573568121476427289406145613748980339685673661511024577823438911510307584137593479079190723698666793670318162798116104492476114229973922338166221669934104784402698512349426984473431614385866651807327515058966935011035923319124790759086336194395000632944700277782112868323483780168144642250558671981757792078139349701070563555668082796938131863328410412160150471825619049694173807371104601644825755844313657731729068891163705563867555,18221138784555811053296911040444811422299569221370698341523745856400091281377839778678778328149110548534138934160836481393838346908432982920562116626677959686450236292050295531261923474882738697393510842972966810110218027601675376030586402861098487543863740705626110087204717386977952136809165092530095562928623301371629208844732733664526090007002304626939446606391205626126192870615394522174649688440887870385705569710809581575204639778805466412903927058799148697158251622260213645585723159916754663707237605872275846686566820885362722073881904277317597403167380835907876296870877478221646920284310430371934404822311,12694464409184116198175216134705674117698495589897734763290223249700439697747213221960704240817308024376618649511257185410755720163743943692791263666036558979570909072667619923266653682384882259644954119285287063471541002032435823410204495631358202104734018269537402171761572193134509812396214919229814690930600798504895496564687656801956575973479011431776352638782289114699743527186781919502658003154674450714069197242726393985114420810547684173494018605147976810102913734546162705259030658206284298418521349062777115509219489672039075093329236647292016824670535351144784388483525751068225542810044999850751665224074,4201765615355271720665237538919680402664127861292891404309962354268106831635826650331041297039291644925592311983403700464576600435518882156854904159089879201301912105368413055078865795374091914623189759593456721300785707753873135853357294442043908826331857106210726005526370024055346666586491341046296314798619327898858072624823009991437876242325624019938022318176060332738994176297193724805935694309014605422020909137014676945305249645201662101488974241605863532571828450201507584679493905057922784236072997143238879363168245889469038437561181276242698369654938178116001428367837409133015026021079614840533626761027,5693818583095067032554302348404689889827513405370432124730856324552577938645345928545249455102636900381970277642590696482249653647276002965730520652542065397111012479589269283364878130676178205766673654461574816233876555267291293343730094421360715866449358521574582941335437947403997555554148186986038285554629922609604751054748762347310142603219823359220130919495866316927224981350998367935679597793982889611172206443879512553133682522147111994374985808397513270886689704297115982752710085691562031953231724109895260045500479387280386873351701423764105530811712645875225583048344423503433093456461313617037044573606],"BigXj":[{"Coords":[31961961449149592290215619337342545369164998201385135329342844666166714363705,64636392625998908156106021830673034903148364934246785109426074897879798496695]},{"Coords":[13561027879868215202586968035768135752207534764402067848160241312364043370282,31683215740694624076579960720726613640416539517460242899883851320256877874663]},{"Coords":[102970472861055393328233354777448191839076263179087526130927097177204776801806,19849778771794568183958877322544789075545226949228544528619329359950140265115]},{"Coords":[8366486354279759555693815735694831293559828965602250556327317858912116678471,24456250444071880675953816335612932507033433175255559522554349078047625549678]},{"Coords":[93126246885046599201299142306317944158536766260090154798797491446571717586613,101632074177392193573512178573083324222329391048269493231849116848088552218375]},{"Coords":[45944473181199785374833853975473363930687909609574532965286298616052742734642,49106561873713078177518155217967815241790729328033604070651886838013799968339]},{"Coords":[88807289702586806295763026580879412609419986472794654189482668002118698433065,66889255218792877467551818840857264643456782872798377645941824720058728156412]},{"Coords":[45745777770010867130655637386117976632006388263133845103488205463444756286557,58413618959379828248439575493421719547880693819703454359788283537541749522854]},{"Coords":[14931705718614911512649079486924798218629483414127465950786381421646404878840,70853895869521315016717813866703398949051565204254795550601147911581008651495]},{"Coords":[31702825468512650039750289022997764002837389172468049717092331147393818254752,90704921170203464181329063311130512192295590723462840980995045506481351030148]},{"Coords":[108133277897421036808605843118854356978565880360693563552498521263092161957794,33994893650793696043114830343063091347849012751372498052809673503667071259863]},{"Coords":[13603746174106309213882605187834221055267478293724779491981408043396477605150,47502402322605913877968636451206238145707201411072573659819652572960084227380]},{"Coords":[21962637032374642863765173367353663611071785709723940819398260699915154728736,65876190623954751874122457014542214494068664571689464338691288646258987627994]},{"Coords":[8139291295258406047002639746372064115101651961499427493344848502049438028449,13643120656693319356484507306610353728697986968072320539867387334577150577786]},{"Coords":[871083651129542234211830236854985246175496411885064575219875767816674532739,100904963893789549224657775356884044157291453214379932308347421012612568685620]},{"Coords":[98028745019433069815621229762947408124245116227553507407780733119772046992520,60367568163137055112812282822118701471566204774343904929920219271364583776122]},{"Coords":[37332951852807254347441974643993866127041633128152922228434313154811023954744,56046459898819968566785812285970001512876757161864884424831574905585289505077]},{"Coords":[11223798616675111197150792218010453124916879614948521844981845491687409376646,70914747125199464172751182264377339815163078089055967502760766110580370145293]},{"Coords":[62949410140974969962342726366577125978516456835571210444108422984760191628326,55668150354406094271153240357261264601037343235231498038021007487545647055721]},{"Coords":[7611358883569187056502001665501128526153865541559158134839099203014115911991,87617845479447207941483995353359860120852817257735643485765526341493112597509]}],"PaillierPKs":[{"N":25922769748919102678415192880711636156565612427571550685296776086119205445525743826557545692077634738129321690187868055737306626420419536394422682260657759329710259802294458956279773225258250955469954464209933873407784778802101265717840506851919529598154066919091078766953942869622551929743069097967501533345363150709912011028449270819442207860620552088412428865900112120786495620291333470644949767300948329241775121748888220588626655915013364614554467190860190736954650967874940702908395331234632114014125372505065096924932509595285205788545338407476139436404463823043865599023326570565049384032977060875483209339089},{"N":23930233287283899271771864413305422456138957780711273892670074191715648409585503033095084345383391541524625291548041741990557564183855401706042293717552023237439032182637019639795919249455653535670614575331737610284863144094845900714497635996654401300216924764570210541950557336240993007183309433063094227377624710274228010652758134777897718742178998545079447283838099902510469006366469099975469096355736757507201973304413688395278990349533350163833514531655073848517781662614171483003731680841330633223244205178982328422170273570503713081265847261211618499950287557687314846590616484106774575999250148317390509484773},{"N":23804125140052077689856128298352557083678652474445385365228110453726681237860799979845611556170894187976654278582576364089033396218674226546868809651353049956675922595541689542576794678062495339422204984765419389268325283682512000995221750412104207394441438666051694475950049774094896290106430636216894744335784327798634247450687264677393229214665686649911456587168142148024558282134024448427550922487022680890892554782651383972136386958126051377715096556862662265886688077689941967157694195467190297477735450118736949849327358586935699405848605265912107169200547464609552395233560924746135866463084686118233592906569},{"N":27732731445242071631661957657712700411367090291795241371771965432140171981887215839890743735562516245338158767440902124645306227526755834590210240211292920385793070069156192085968959067158127765511651425539136016999745924428061397793021945121990437538890398656832618417715425504589084090095239114803460787199036351739230987513003864153861252195944069425337294669643857426654756086277471320443733998616523518289821541295617435513033264977202437153989318832642208143170451837926277566396048774049270318848738844338850668187024045715008196311523744942555689097435377598835544336914580911633671909176827168167136470690349},{"N":24540078122494262833119917930091872139739129939617606686122284549157786865278292966087938309454800165081094474899057524752572006230843959997841521536274236615511587750039832014979332539924539915807860222967109230298738770371871063759834296194059907031260324597353713442284471130560805946122495294807423458083635025189319558646442212459161798625793784738344309603016513355951936699928410805609866016648244631951643648288242475041729105749202516848107495430809184564037582943457286768883109270231510808158554549441157152513493684930416951758705877335895250913277012541968048511163986915876606316087458297080987346429881},{"N":23068407873896187320610408658036992760323120237076281539139801143529656493030091268390954927616119732305210576479622679524747880246080257702939099128994719527894439722828526117361648236913823027514544862046712398251734066527697676237348724465158893599560473200351530224245041596340220963683429881340553208409699594299261181212989221107530971303522686320513564226387471374456547377291192484997988606654540899634665450162274963086331783789860908282085692296248300574631527561763641974772756130570734735297575564567681595756096492735284720794891113064512997620639494646662790341453069978107064092657029168133504185408209},{"N":23360724885676198523522179321150194474267520026708517257764444663025119039638464657158724624502663558960702469988070676415660798425916276572290617437202837750858738892140118363926690520956187802097449221385283612203760207950600195667994976400493623569930090999021596112553157677485561299069991215207522767873493631366488446241092099654975621689119086509041077742510323711222260189730828492291459421830791540197321337933505867430138627984859014648102694909985043765241359798051875756951108870386862501048751981261038842763679815348130953290890391440850806363449637432840586263665690832227799688631446932015796916844537},{"N":25572476038149983843824758627743773292157542015669155545898739136432359227667585235619146413408812705275735125477228881724887114180658812229689479785083051083069428146070988730518675361280497876215801249358736365876007532614766347833762716625529381645528767502376159614744663698030295284120589012492759402983796882103200388651743368106596836536656368370930363045639317610411594882976032564820311800297421945366798108347221120736308176815503106682839506833524058020959093518528060465861144447540812579976237229589574562145541453749754749768478003306870660214131556451734687719631047077200787163529663274266186702479657},{"N":22679491499676926565249058751269701914370165376325885490706178594236435587374452393672919867257890172146499232592163563478749644823548404207107209183759523050603597049541204457028947474998785130219644182203008088877544305999771879137962239304258371157231174473491797491114277983084811723764080082851754276992307408859865524067180300336894890064430698022388669278921501809909740064260359142339540812296913591956784925745003590749703099702370645409020780887758983568638652737043891478141095930983089074418014910987946825193073588506986312390146214478478314600989393866198945700334073322066709926152728868061176019551541},{"N":23556951187256713732039305973238937631620385080790804249029259279472926645248156172448686117325741554381537031072742207487366612992119859269685828207319515666102872111546619607137952974660084980511684952594879342586512197525409799350424247192892012163769784591542546626323584978204193899561072157767856334488337110957680579926475975853118319141371431419486620931003438350760541975587261961199260033262263106014958269750801811225868080849204705441859105664948039653986722714354940941410686784948916936213417318953574086609821961649007609305029496977916873440356977063491030736996785241653241262171162950673703965399497},{"N":25874692591276389940909836821933328634340387691760211719857424847912710687202655208899136151842265948895002254373718724704209721944297143062448179072459504026936041473424765480639475272190837266572978737262449980766383982513621598580661341958135147571122513631091491976191663115339463730624237942100977649124658328431032849468551008597071378488661492324861414296280692846039598797857140808360770338990664282941023358641770157837364612463858095463039043959476170224596463891235213200808423306885708639894810932553685021558027739945539621344374072593175483199343233185955959027063970833388545231587659014590298587532269},{"N":21093015027631740022404443614096248522776233243516651444497036871175728958780883068858760981924585432192986275662870128643941927265524238598903061299795143929360395711020210769824764384718922898979318706735662563638859312024117764087176816929100038836825165997745175858151391747552772916358596447916581236137266690055236206686429983418915105841208302705945838725058954761546083763560226985859597874827308926656876419352353487645531847757035757295720869824004015071252605178819856102760159009139713396577974830023684477215548955933062314225333947463154019890073099705030557644025494887348484646782031863159015194484417},{"N":25298229297396047246415163429032546137139715727559844391184017906947304850232141234045323209407471473714145852636924268416866274482603754141415609592221706725085407059971638122009913495964543366119323417218834638913881087432600102264473788528537095668778412431377856067113698729914757144153775835786313302871273438949909936263664301138604696985912220658568672102041006541952444982579070062275651333990266954050520365848194152044834016212084441028573044037025009772616765171118784908205140185837844772749992941537017860827787097838183799078426827486346760690086948873222139803967157701952297751113063507286886770253809},{"N":27142202438632787162126599492908508783692765215748557510315014134009044742375492012422395905792294364201376442258017321008269356413320158807932162865700040957744157446176162447390298999320446062496836729102114052332958615915307193716216287036998207324413342337908047902088094382893405585342830460716335897834006040665407645344104524772021574862180664953364488173834491400964015536206179143781066229852877159880337660767454184922616386524557470530917791514588890903382115919687896218697262329973216887300329083882938499296413225108475327673886217363092593458630101782913564451822536507792690041998191978031482893873661},{"N":24506900410165079432913879286738242981557799447704277709132563752281068885918764244597103897934251933625444124974453530023693766922128717584028552755128051187819589410024704161034785358235535327695240184593017832269373629062497324651346586921679971074785452914954524453931920025017233873766495332551435302696547239605953737313669053194482788679487077465271167890491044626060923037626210805459313170671202877996680415217025953459280403666974895608025476083146334864242075064839862857242870450430867849337473211116054259839281123892458791925377357496234454799948092884977174468592367921171996109259120511593665944142269},{"N":26694966767987840469949338865344547117483340362831650227215482575365406012636774021468648984974992022743149425563486792907591668251920735101399223711217247824036472514130615393737405150133409306326610912172081216216331513707092964488994949651842782342704418212963772590286378010081225253538245220740244206602153540135126863052186543426616293649543741875882042173380956119737322204906042367710990417544800462728321639324791151406955584010061660628304199783826293959912579926890912970052339895938137461119473504729752401310289221600181057106776643382986556174592325963163204522372078262520351770361427042538592078722253},{"N":28161406783438289776782541515550232234219338732182263528677255680862818571394539837092411279908340595856411618560352096707955778113841586575489526111758509944691006867155143609674220650793817498419172979829028602046249597147507621299153669762040424244341554256616377217119563525915851719009321686306763607672801085326365691030132510560260181669852932393003570340516931927914922146799899039434467722922041925474101320996856938035131446584298134298675299397155375412990353784006913691603024110559796744887732721945933471868150638226543773483734660294313186275340618342717882057017678734282256333631978096376709630195493},{"N":30290385531723706663194155723402482345164001328034021287910161482488063429892351584916277391109894294446801833020074687889362652138426091460224301803948089690115686705682426193759251182110547546779254274419781083851169949275087832187538168815749507922889270386625094587688358817642053715412200458038741309360104964334706289126542952674791148655002683650712544232003067953586569445443104249283623297733191839471659254940888571771772980381177972566220724293577306168494057111878161156955456998298372496716136324267059071403030493623531599851487444134766104137251811774500492630476212318493040236485031236879687941684761},{"N":21891762840438596060416034930044842446937758373617708235288562429502315391645647044939378215035677465574183685957522821315454029977571728750605988329881847569313802549118091978526315133726370633285214423147938264418314863217805659876561184725718735591303337902948467582966199323804114988231963307083517180657041313131586070203747291724798899561367507615511932716092324516747320587928666160741969956121773346301706809405054989477031949248189136343469258532041255092588255241987397760849320759799542054627513230744643622791455964220513319415609245199516100422991698341556744298439022451385568791478794837569530013904689},{"N":25360934335416714794999313991057897528923718232366653339706494176825638906694689891746545886915964196582662458688535283322287088397853865709093712398485753916163063777301385991907720781358632265326870516346689492128442283774600103789825609570294923480202759046857115137927714980847316960609776972337028789163184648676367675625026306027140091761009104192786329465543720196130052658782412428125321357130192023653185727111578488774341366834046035305712205910649341950409228079277410881842097288924692206421126356254520404943323384573694119449632324221088061482676921038116252201661916622983158849603411299895152156469481}],"ECDSAPub":{"Coords":[92492306118178589821640584737240636977398594678247616965910942704932180187323,27954057508764275913470910100133573369328128015811591924683199269013496685879]}} \ No newline at end of file diff --git a/test/_ecdsa_fixtures/keygen_data_19.json b/test/_ecdsa_fixtures/keygen_data_19.json new file mode 100644 index 00000000..9b88b542 --- /dev/null +++ b/test/_ecdsa_fixtures/keygen_data_19.json @@ -0,0 +1 @@ +{"PaillierSK":{"N":25360934335416714794999313991057897528923718232366653339706494176825638906694689891746545886915964196582662458688535283322287088397853865709093712398485753916163063777301385991907720781358632265326870516346689492128442283774600103789825609570294923480202759046857115137927714980847316960609776972337028789163184648676367675625026306027140091761009104192786329465543720196130052658782412428125321357130192023653185727111578488774341366834046035305712205910649341950409228079277410881842097288924692206421126356254520404943323384573694119449632324221088061482676921038116252201661916622983158849603411299895152156469481,"LambdaN":12680467167708357397499656995528948764461859116183326669853247088412819453347344945873272943457982098291331229344267641661143544198926932854546856199242876958081531888650692995953860390679316132663435258173344746064221141887300051894912804785147461740101379523428557568963857490423658480304888486168514394581432871029883243824735053370396662544346871089541175527507206836289408264417977841664519289897496092387186852283662600673751384327281203124195873086806739914491843440053996852064006435815657612058155053057664862115464638620710114694187780447494149294549071582862509142930474884616484380287227610352866300035626,"PhiN":25360934335416714794999313991057897528923718232366653339706494176825638906694689891746545886915964196582662458688535283322287088397853865709093712398485753916163063777301385991907720781358632265326870516346689492128442283774600103789825609570294923480202759046857115137927714980847316960609776972337028789162865742059766487649470106740793325088693742179082351055014413672578816528835955683329038579794992184774373704567325201347502768654562406248391746173613479828983686880107993704128012871631315224116310106115329724230929277241420229388375560894988298589098143165725018285860949769232968760574455220705732600071252},"NTildei":22437602225740742482465534898349205983133213895660550238212001804732032977697798637757435728694311659299624886491819969612531644822478331097020027346346025174540910579800256280214031292073085792970245723432769912206355626120327772649905875827091190500315669126429992547075064736037570537735332469814000462556933603719315364923773085086614780916637137068518726889173784282955430621992569759561719528189938429235007732504425905045067985337249988673084527372002559031400047880307427208848753891291386460253720313523072063965808016289774609282102972264056704286287440985034888143293816594327214769326166521224390393446693,"H1i":14948927140088320458060089936345715166494298631495857212773926944790409869483957673185876995292328343640197788589621807184518806705821872810447516194927678801617268846361533345460325613772855110322242304569109406957894646727384216069315325052819333705539766154972989576988248927288284161530384846682668538198851543196833452065614949748530253693700328342501577900059842225778082026779632761099626760985225309957646536118173500439351182747667021029407125807666947346322131872894915154624415940708414296769044070685030466034270063053482191494419465005898644603408406165778424189251953592599788015054586521957253320449350,"H2i":5693818583095067032554302348404689889827513405370432124730856324552577938645345928545249455102636900381970277642590696482249653647276002965730520652542065397111012479589269283364878130676178205766673654461574816233876555267291293343730094421360715866449358521574582941335437947403997555554148186986038285554629922609604751054748762347310142603219823359220130919495866316927224981350998367935679597793982889611172206443879512553133682522147111994374985808397513270886689704297115982752710085691562031953231724109895260045500479387280386873351701423764105530811712645875225583048344423503433093456461313617037044573606,"Alpha":16380244965896008801919408645936993550924957700721479161673630281850361062503261680599689707823676777310077481906382879606119604165047930373013280115012493752844970579878517066443230309042042441572875966190351578677880444163051314226325635339575873633557739362846928410342828296897755012941497353554734471719499538529755855913754690487421231886060384680021711276147823122089629967058794841918329868513135059249177398876169190137660936525931868726446930727579693236881785320959200907132001805960652371305197116002022574810436630089855452678943496431222390051700491644213773826180538455211527397162384759501040652373520,"Beta":5409579759921405496172851100695764176115240640942343102082680030422623318242231542603797699900375975623051590552296981744220537972849971610413837294126572702069481792906841293756866931654296911855979763846655401892922304903925323594082253834083894084982069615207172506207598042594682752787900534890303259733200145578418152237259219628361487642223954511392398278461000889097500877720476887760547323947438306561036244840349379398021445297623344466586628982630703971743416680901079572948478711850482102325675696204661959115646550951222005961358095642498470440397454176534637474359381203874990642759155756376039458281787,"P":71142622732823092771600232991887405608420439069488707234322802311395775960369720791090798551056037392644423655209711227449759711339590752246402642043161303328834147730525092601565362018860913373554097711171347910977871993801024409572687764722273417089937930301881129106343959481581469499716794042933844538383,"Q":78847255568597063210353773482737495188025890214257169939115963003125176821588317019734659735792865548486459315958687046377971655293341833596822386807038200913408069815845894019290816469279074780543511918691259124375994723766610947141935133106757808745250975676835609615344299234348125165237192022527421628189,"Xi":101234860413981333785777616997801195521027200114102541777592727366717615158215,"ShareID":99910913777216787121500121711080713911605201308487494263101624819470958719093,"Ks":[99910913777216787121500121711080713911605201308487494263101624819470958719074,99910913777216787121500121711080713911605201308487494263101624819470958719075,99910913777216787121500121711080713911605201308487494263101624819470958719076,99910913777216787121500121711080713911605201308487494263101624819470958719077,99910913777216787121500121711080713911605201308487494263101624819470958719078,99910913777216787121500121711080713911605201308487494263101624819470958719079,99910913777216787121500121711080713911605201308487494263101624819470958719080,99910913777216787121500121711080713911605201308487494263101624819470958719081,99910913777216787121500121711080713911605201308487494263101624819470958719082,99910913777216787121500121711080713911605201308487494263101624819470958719083,99910913777216787121500121711080713911605201308487494263101624819470958719084,99910913777216787121500121711080713911605201308487494263101624819470958719085,99910913777216787121500121711080713911605201308487494263101624819470958719086,99910913777216787121500121711080713911605201308487494263101624819470958719087,99910913777216787121500121711080713911605201308487494263101624819470958719088,99910913777216787121500121711080713911605201308487494263101624819470958719089,99910913777216787121500121711080713911605201308487494263101624819470958719090,99910913777216787121500121711080713911605201308487494263101624819470958719091,99910913777216787121500121711080713911605201308487494263101624819470958719092,99910913777216787121500121711080713911605201308487494263101624819470958719093],"NTildej":[20539613942852364097890357541124859329931817468396278432713468646303963073659662742703665137736867247354367523800071318544570641421320510992705137876681425752810096966415479528824625129989063402576946505816887222102561441464103605308386975248012283762854115939987945603503283072741824666735245204091384515192454349252950007899626081034649919068642018312817079235168086885705851677572363277983076857313399016624874649811334825694862350059490166759704819411086564625186038339099281295128259092469609539775245598320922394808913338827772001777479207381548603315272620456484970681705115865233047669675602308688791376160589,19461028678249357721701139019984545699598216253588699892259672060166427273458875608319855785678884811755179389274380053495578644060470229307987007292965327985966772681212738091909180148035785695413643708212165777295662698493311553457174395686873169155288384255670661532430410131045712913078128214239252258473814281283319061613409102410606683119900924722782015902970301519339718368508022893331969649513655635811522767629123667744907556474126774472529158147258343482417188228144974952598132795041139358631852141986745214674779692377899411672630850213748161088638857089501019216868292821676374914063004957409393293909513,23815206664659393600414832732918591362081086959256855451108811883313935088830793690110550688160373127903180149093000695761674277348327575728255258492470452704258920461298225437641154249481888087192237143947805411796310656512191138629555279666557122333244803756577286887501632314162770617970064401783626962319950524158923845138939649762251756759762119774585338772559055859463599094869423262313306255644927649977403492926253217608523813644206820059309357940964633363130901166057002430269910921882664166860038861390305316020579398429144038386189480114288127704265879389663380565983482028227028306457603727009698486364281,24531363009049563762536664273685630249930678743601473345646756718446749360580428942513295608401046098557387011967587876621178423418085640157221932880387840241062539585907115950101921176093340357598786734576629107604766098059509560466283874031181440387973563913507733219768477775440248994272649062713092103053254889978195382189063452107439308150731662099755008823588080977928436274879799764825887538020606485093127463680041134931480024720440536560752357773730443722294290727915022250638670491342013254556128005158924861347226548459626859027825687870031912255326425000561908947972742109607669897905187712585858898757609,25485947141960036800495601740358196336268148055632283852581334267632567089581351729697672659186150817483946028874699734841543360085445274610946793774678284845142698994270979141586640525566502581978495871744643885460820923876472270768798335817566781711314773489485670479771252073613546268231833675772584402239718946768734191504723089294480532048176604551680713541748910822012363078082926628834536634899606309021451196325472880525430322895659546741570135136047631868000597393506058143850364801619503318165686086392731222189995494225633540472226098357551602534472541794408218767265775850366289511546336446350346021282237,28927199961592509462716713052933904239681693743133323458100757563361525410670677174848159248824087482997906403441479071298957717300803186875289912194352025314864665854179681659546207985006650252942140268140510157106320849846175665072784539119695315757729095462689260495430463870222739869312073694346079553731438032339737072477343055235278557275309616493517920166164080693605271556685355062728635594753076381152709174590915306592547837200121302421882042327338955791916538647734045471143845013412592155994390976714634271247514800401724247381959070976404354024140134277339724455784411154537706347451440209596089260579033,23535119694477523772171748044630208131923028017288499693412795663706886468394056769073862998142660508474676105711590469240299300182072142961838102383606369450702330959729879893242049940029310408964084662077585876233411878169942718467081776763994846585950049650660912827541883992039288017630464390592382481783566823924532043610685633953209522603678841504652207254189077646669746333277037092923165111872444873598439940966325805716105630151638779643981500665152639984434504817034412086671254173379166038071662889121653550757613052820175939040916661555723756176613161036717523938816196299007092417098079561970714605061629,25950783447263038071689830748627856944354421735888733670277679971199180982562433131778324823115329151828330351648021612294094370722267669972986008148650808031918722892417970047773133521052009921040352676366121022268583455702531977371124075420219730460605780729481918672698487964603151661149289116143779941433746038933525309985350586367303720987487112290090195247099032317451409521767630753382551078895196505751734814139673689437231496521554705226938471456297964527299627857211400740652357956604961830754401147898467475649318148547949522809325493238323065337997986089837089904293908389128632840557033917922339991780941,18687318215344566555182740902454336428592486945614858718824661784376438207943593936740995084200358460316665071770681463630810552799361606949595415859491617650913620153502889285378972038135570359724693463761135116433672709408902151793979112715679738392883186006369274528906256519536716049908878346476950103274343269649895419042195937774381514132210454482820166758270346958078142742840173830940449171621914508101385104081796180941351697633772994457709351610367195330318869580666697900958479010130985251846923421963647318437209519428820003347978947799013079168765159404172743072632243706939700207639779907975142224264481,23171083837957860801722218699383337900446240030786871268841926233540016534306722256418697981846104677203759841627977766724259030420015851980511088229043403050763668171722648141766116654882525867416891436685059276174192868946692072206824573955678962077288068058032958478942750338128252470165933443869447212456023356245726416751721989152798706366691818486325734110680894776063318626260722657549472271184224308146689662638536101291469177898475337027531732897213355102104990685266062044811809193138366772764276162181116512200063463469172637189164324496242489479899844513951546392297220122152709400797483802836017803985829,31343857270714098359641269819793471247744609345771779520849062499842222751853736635128030263011267623933026775894009843057499037409921342064326054830123558338476304900840753732976691522721379417037190976719048367738172877422341695489954487825668390415147795382659776979019893183466662138357984500601883268994989224933833342232607751640920642550766835871191739404896219865225614116435580799461951708239551693029017567595268404121330207564314786956323833427106966279493560190075571199071036639702485305576334075428484139050116713328535867597124971991546934922511844853709001583656359284723717084806850145785405536911177,21157487427733991932564510362138492162446873104287756897983482468142107066461483198236006898398559574298806811271053872211924774119515269456039458266616445024300383802406544466004007569246261860103312006457776588799344222340569710165666518367783547810282003032927364478322210948885423703591814633243286070072754280297773344097615910071723846039979528910869815670975142743376293197136856592859188733532786144697373533341877747464753616005694543102759948736736802569257325101204596297349394258616025918915521692968786299735438817719576226325356937526633071323693338940757362235570825853130085312301448111119042363796113,20871071186633559430638470998115518791893553646420368867902204568431630269565952322291766136370093127894084798814242475456617969102595313205728405129168253735048454253508700456761223106599134617920774227174015124829476988377890165462875183814841087993485125686632410376362585538078467534668954228084080919739417042353928509644795709201564083148094079836306167650314513450129297783489119015593642581024870311297891618816623633162063381775243950740681581620150958717466968747843706102214690157071025611480716612116918336154774385432247274600064909320680551901771492165221773721500541614228617829117370166464409020423677,27392140202372139560911530190722295626016991167776777076251374167016701252229100335980281077736021393527993281083564981442696373714433732500818431355034758384480955155409564373832745499649881975977124862697809360957420580753883129965594447943274206109113518479198329538838000642865155652137973709624008263285324174285285129803357738290385065522262059795474318914719823768887144641758090777562619592046692917101170170722723905514971631800061092086777420826999668590868568525034863406950714560799453233548147404988580929389926995856613912328981176466707497680180241272497358147647189027922268738449537259460751070153621,27430458285560064975603737623690566617914765114564307656159371148918349993794669623672608540855772729568670170546349850367039352526804750358257162362490778729908291097260480430890476823722553654389178498566668573496227008913481934125881578164602723285712928871252207939941804689355173665470036039114037118963971589320342018774107583274314158608546842149328506685304690959566263296291871998398637364399822435359987280203416832697098234360106966146607816540746285266790106830402077656904149244001383199485864465648143588026246539864484902228828598281873311925831114015086450712030764672165915248196209070047454495085169,20958576649034914977467969756965874238364659071947031154211972997487243461262394795340258789930977809611131615831278870909123144191655991893039673506539165135637011485008482874021240555941833074286915507794874804218274011487390148860550531668300157069443584231888571925159473970195937554740938933226402208131160317818926784959057391389980505131685522579677264162724011263439981256344785140426649255485125637348357522582511064347878764724812085894898146080695383734063354384186594813474135513405234523117338489484424618032520881618202129068318264606277435174234229102947510033247339629069254901430086639327996737230861,25673210614761004254141737312053451635018146154378993341101985326929566270344015265597835170941666913606119762699769929117810862190840467973932188558749547474174367822508601158829928161219529997833862214002106486508027112865708012732033692783629855485545330232068552007350877531730729790772847199443436084419382562932662568511421420283558235026303217907581598166628555941188586096538364407553738314729036218493332920854764055946289816665260688813327844579390598566768671973314358968068459214729157676432241630688442073088681756498136814491310636028421098965714509622937097403466307515165856202257786336739101389349089,27062431131775909264962122516003720577621307700606752850978674545503762322327045712593154396229756047740198870458644425173406714147601486563284216353367017457813364860861671576291918230182938220436949095109018225648486931358793025228571750572403143070647269508389021099989559676856968002395615757641794675119572488971947338527037552287756390904188517823120698354616567162661395526975254448758091053074808436661809101512025437321837959528689272191238705432334775200965152419124620293521962173467865862080429867958898040527206234108561471429991355210673373595922083144022410446012714221026174220695995286555692560595981,26101397013404440939950108603288565551073409553356897393691328641679505760230621741096317929709636865532238670826796537369580597665138924272200816037026280780915781305836081579178356868109017075793286763556497902869947712856535743263321959264839901002581734771178344662509473227839268090064000382806059250315977679226653239225555007655990623485545590336008766750972486014525144801720879444739045959169483687885427725508164188831961197284042818573448808100923870021600896976125650269597381009562192855793477760166114366163011349461311146903814241124631772470784181050979028948750586113514587005436500903242591757553293,22437602225740742482465534898349205983133213895660550238212001804732032977697798637757435728694311659299624886491819969612531644822478331097020027346346025174540910579800256280214031292073085792970245723432769912206355626120327772649905875827091190500315669126429992547075064736037570537735332469814000462556933603719315364923773085086614780916637137068518726889173784282955430621992569759561719528189938429235007732504425905045067985337249988673084527372002559031400047880307427208848753891291386460253720313523072063965808016289774609282102972264056704286287440985034888143293816594327214769326166521224390393446693],"H1j":[16370062914568124684409954423220013634799944354368183091925443712820668316759795091290952642141219645055533606292548565759917746455430426634828957426644826424037530474618159463204943752577732484149675671820306363344833458247384057865310742915406677379586789735200748327711872632191061145184949312294612467345847214916930759229195852858849386686352293049987465485866498220082468131280135383612600619493426252446949294373638968518891137429993551161437309269629260378927918725566711632082553316166822070110359114229533322390061282040482480263995079579444943917107997110057038662405191417861817663789094790962966996587522,5792666313208572350705907594949414590804636531753541567087068453778543363077542142305947911768781865374122070750607847515026168979710170113788718287465368491981654823945993941924700096393523941715256095048825025361038086570514643251828085846380954791657627403414038681940866434304045104130214177360598208974353162505514170835103706979081795485247158115653501838694614859268884296606546104394637012764653804556264770973741677326601115655746125293204398034469241183574629519235451142797709676366285591723984602961129858687877266469708766607187000988412118886394000517917001485137799190522482532376333362935442751367745,14510201356793997359892744405553071944121896518459738320470368478827891282273167297002903311912769777071155241288755372185351193850631471716718530488323104261827697027757019895835360274243188719367049075501436153398857359555924247334095665350350441220453460409146684994664351725204034521761578947269005519140498383255606322844603919000682223940913285551513356600061526959181206093504072618536296265435830192715190515397064435874311583709516596584871136822289753837472532490128304199643440789002058080030111113389709287097531544417461853059085059819958060220257218705882557929843952675556987949500595639655528439052202,21994027187251658420706956116678134303619268245311594874227984400819404446053485122189884678892175444688722527594580466254690437593853064923544979570444911946308283663229116693350631331935027065689358169246815279257122823014594309629197723508317910829246255814111959552337648906237682616732913305786178221005434606679461852547394872592127050442856550471832240167936976142756988960345619830477159914332536955389792251800932867389016006568741180137556936582683389834385412181167798283357296952856933963222988284608097870458140102834156304710781157917296313315513842893014212063887070100364867105131178923785373561146050,9913834538682656788610829579771569556624609911472542281771864528920206652057360227595914694025069327892774241543292898072673087864732558768588752951687639831868499912733997907550450742144719953844448973554109420086839278177283587750852958353526057789017170152122423018814264172807655239353760715885145548388992476483731471865364270428702324445078126354834888878640191523880163270112743069852403951565444480363239177556818094412397417215136415082364220806171351930690164376890892251369372868624028034980680685551131786332553623705883769998271596791035214982761974622986462384695349153129828098712177799482890430520965,15464554656029222110560140639422624868539470020281691165975400448606613120973644407534365935510334228227263162749065335291017684520353168923100727746351715681760916446206803485743114757577242723665933043744987644589191843035807511863595701170012104449542518101585729174897996392297770818633483533801844500665798250501473521227123975005972911918718226524366806206633841675388137041998857549215313632375036761617534744890091542919972307048750757690677067439820416806817051344016166652866968067639055986253789416713411110543055264622333767216550525033482750914452894139691102713436731472281130988207399023815239852528906,12865788614422531768878171769038267076266208200249164027644212721909963715015912538682157638127903293282023380796412378159235431043017021949518573892381565899437599164703723050587964116914107635838030249942901605297513982608974593500166572552953195544515492725593747884602852061628830280449190167844572097543184555448060083835007200101317266753106995526429573085540857281097156159258319440414895242242967023265742835942344738184941128584859242462621792495405423196954908356769683815889035326257091875874458718611430785903143039161526479973858541524126951528796262613552089943663340076548393182371918642954593889432834,22194516202811321146792934079465991238594712937226367504517257988113211333368349800836879103947252405610400726941861867633710543721876626238467090611506859331575128297406631557631820626534381998686705168632059305910804423292984195597625141279765512951234238593649775486094326905655122386938572411401132183960062730500896105597665702000968846572795357957098192758080717128908256523579293163137417423771381528097786100281383788052729825837521137512379280310081930804124457815661946839040621474089357381345723789618079958299474682840114875558952249988571746058484000722421698440994062460208554903525444210802321182968014,2022329329707369117437055740094404969047484980501833952214571687130852032499620508208708908589247080600189902502365407836277381678968110704345539053376355432754797822267575827372488857681103447936055038802753292113151984972961755143427625893918328299356797405969999266508287378495280713821635381697950988327467894890827305051792226857027384943282520470216088404776455333696749084292781033264737672933515625823807581567568754027253581653106384383593181057349330506068884659072076739226363616897242406137010778123983315619151551375977509919335513557274798510437948502408760645678633359245877721858614575061700591393721,21638702445456858422878500352234793329413106731788942261751796025224145517964611169394617788434763506002565806620170893339110273126875286455095506459298086020278318872581385674653253080383128797980439557511752718258375238388481802546638936192461482797150514683008473213407715728694302414916863995043974867827876036585791719812271742103323384468954527534596036617313432433874380308883492321501736879178345427074046787174556058119038049586737477628511165980047288251497278209275581664775606335268904384984155864116270266473616061700061527150495070719210903471680082400487754898061609554671248760480063619759950744280907,20932768206097680299943959313782719928339866139959731166252002876096405653871733170637914957728294590217455322823662941811142831487382716004980657707514358763150029924714520812685697751484102120909926147024006189544048800446501267477163792293393919588659127430522309503845365000611784195390022621092266420671288509706282186373855655358090019051530324622779193478505342408854462043136412488215465955955421082850282626458587043647758494935495915329050933653468179762936320308005669155322055934931071589853638981754901315764484414249149121368560265856082417024956730272011998498550756243974623835494966366962683389714964,1365816667585940330490355905311774458514715320376130020996515573937571923987574784307504874484515899610747050162880466334946062918938639620242137371098595406424267003818882220942016240927776918797542668204898851284066695289242978919397682088055368818116198595348273129318762376760634794532531433638073562846988038755248023571028829475051882101071203979111269507596248527906600986677728810751499828436067766182628039345309355341295172437424660504415028913205507139100147921515616240146193076677157859750716375066201587358526136840334151066553547201088947345861316322897488659331106732575557394540428972305438213375814,5703448175361065536885380258834894924349694750000788978424055908887487214267289314410654116737467233333514153490994654420800717947051017245903088635547080581089891657444714373263301759995815635072257679749046151543038146531810310826817366207696928190231298874979984114964348460891792295427444943206125809938612729939665048974349693961742238426880015130297226114935093282566300228257419316454068258492582819117310017835605391570376283517758701794125467889060184214275911038527696714000045849219024045243597506828846590195831908281658454892131533791810760325400211405258812142759529523572815227489710851557846638137542,6412242406353564485058502679404605624009190790593030266854505291800626778702270387175472290319448965303250433574173375628339895100997329474893279692868549940279796264731093585208695625011062617868491258157215447275957107991387222489580499373804335870682739788296835432969262878909434810429803264643527538555130662379672012787064972208117475596665593916782896686056579449802576468324812730306559649834202797329883549294599723290402017221639617907711497472325019619452322282704828796586508386419927496666562295856731151167316262475184222145101211618002798513055006067228431048839763646095282531119806559583105533794495,12506213831497706601305625665856619892819919408470741644330076368184175310515183251146177621238406207206410185643656979107225155831507800032694528257147716038515158570256044209419514879851010106278924359714862316802415670557334433034976750101928783991744583819411313589306343712690219032368416678985323530251239318661396466801994308940886752046080901718450406046375904389766893043894196541576969928137946704159382893563356338387889137855413730990126192021766856444171515497507122402917749807424621383187173538906785892654668489198127757882153223185090960714890345630801099413698632285321494907662894187137142803150791,4340320683992731212484211057800765907410470847269768304639037529290512671362801376775768288042129836088810539204858832843247178308000345604701431226310915807542068901686097542648829915466491213307097734259829414895234796525272600474326857346693882386640793824277606043756669695477090601330450743232413209505539149906338741119182508496705355703793044044384724643256986023764031438551900073624644692938223394706241422593949897781383635695299729171084301185179708550600098470031089086344919627503113655735768701217637285566867914251954499504690075652022468818725559007318841314414541437592229352428286215595483845053638,11992304082547451264970842283976418853821301172975086658682116387543359417074268643442593212371361490968819128789238354995117145993279593426471336648259583293294202599078859260437992548184464009386152763827946804967424362206055435693041324410893236957405711025923054702040161696386453571055246924713260145964584750230359074777621444549946362450468684233332414284037283955916761049858000878784786268023500095161975906495439332741618288811384519280375489794382891880648564800750663555801045203854227681083222146920912455217541211811955477767635787030014152643158711960638325867606918508708678622347924499914937535267162,14695333877946105505101457937623624377562698430478247685331048607650568913937201633971254630714736577175024535322415669442798271475956496536083972430246897654017678266490639701809689918981250971730052435032797344400248226649579239038593902835536123498617918666329121083751772876090103853533035181736615043011673643017303605152279678650202512062770466963460251942403425462061196179491356440328364636048438335959347603428717042954470887883300891927932651483741068303515425618933688194621659816079976510221005329843899476003615861655015952079393164902282608831513778303062716347528913475870793908798463564832083549613643,6361624891550612817090909815430156259585522002511378700573226127309539860650523892977168943678195716824260472829831132024282728135758912178943090813161584286046605117495775878170654691942858452263763077967647297167266507685944611403131069163214134338169098006751105941940463654618427873599267528041887836331948305951890335742121311832653316741398094161561749334956600724220433324620401615490879450816097431926849306846384679126203940987154375373597650036103822699248044107851648286585837187416880739896147553285981829664828869063480707437325000260106329487862878699057790666160151383639198420965781777521408308842299,14948927140088320458060089936345715166494298631495857212773926944790409869483957673185876995292328343640197788589621807184518806705821872810447516194927678801617268846361533345460325613772855110322242304569109406957894646727384216069315325052819333705539766154972989576988248927288284161530384846682668538198851543196833452065614949748530253693700328342501577900059842225778082026779632761099626760985225309957646536118173500439351182747667021029407125807666947346322131872894915154624415940708414296769044070685030466034270063053482191494419465005898644603408406165778424189251953592599788015054586521957253320449350],"H2j":[9653640790649475435050720061635061544335995170813227062007808546473167610366804040613054457009646767723479128021709179513573358845884462519136809844401815066012655857973373223748942767836422506840658738556503260986697250346171921063441485400421533124068250604530993514803166454504801884882297625678932746326066096923436475087338628767636689481829832307623108408425959669915171224014581673426602770656342925462023157550194457295116217893440581116140543598050947318929500123378985275492765280831578803707538206440354119287576298034238031692982504012470196898579719660373199491817717767711160029710911173725338539566802,3578111860663702772408903345930659472256129868015762875031051677614699117364424442270785915866444756532836287879751640816575659073006676007210405202315496945346450727441553016187592354415793891110773645408147683476571812485850037389853330648238106038729525075512542830213816094853869971661719959033499816133612736102442725651388405183329714325258711655979055386253406319598230253658818466953001815116530962213661362799968355793928849708876651937113231862631691372187008559216884922263381652908899796744393080985272287681952842592674663712445064149288160957033524932550150413325097150870149209345404214256294282382085,2562656890570835296352376205216590519360952576353253013086344012422175466058176642832419040937235521572328705583208834436813588375562745525224328564354560731400723267162764903064018742843839822445601315505274421672289602485557719646504320106522113645676636456687468751723898215955665240524139836668877382766583475339565598073690853848639545227831264115164596396262772422415214665834769274554577301336288865874066248890243346947740610544045667761548206600923673948174739356732295677551749947395385332556227074205668024351973201205328576603362256016900712683688241615565934460363012498930253514800348031700419220337084,22298685304249156715841839507145325522077048988910268345524279200863227356693376151033928569980263444962701165900514081299580440300365488019578288962534096517468902687907593109404000193096117803450936780948162440311950526862133749440555125530434273281017640257175046682563772712146188162909037424635371282116160809281350332585723737917537784267577381007869736550494661878733387948458251550312048040279754696568539248453484809390032249968377837207868808482658171733689439009562188880777607125039187467565549644537971596666666932158369857160883674108786200103009448463903055431989786220430290067137368612432640074310237,5879475324785385886080118453628099122983640585548725925692818787221734315336181255707999432375105366554548265736590343628955580077952532008988837072008731794155978542038914506112861039350525606157951017828660604272526605818549217659336563240062224484914310161520768881507503977620229908361541865095980430141394883457555144123820008061398004875781145432780438239985999952863196781468403423593755390719871396312035325131303835880979744451815683310530516197085535308856850866798018523735074120787646575912319226234213646284739550604897450763442470406797690674949855848424274918433854009972115369882751833585035329242761,18385446607341413929216752317617998458160849115285197433981133872531647462267817752048089105851349541660795002685652456000086108157981979426453705134803682299691630928200421847304354380350114763235863451959398215394354125874494984531309790405988904217354164073819568789120760731377280912128364362051769093741704293517942028826498663326655241508795914202031051398724638536523567800437872676476082333745719105291491676453403521845621182329449421075607837301738332926110019535833222421409565228043580701032497151738816862657210572819375918881851411438625526045192015060739626198734346744421593858157488507552447503219157,1543023308301318791291636723263661645234407352972693347930324541592073282303070472660827743672362126204249434834670307886593868303926045601951702434485524524299146190187978789568968092026789881246345813079894138764374868096047892517784410005345559357208978859029831295378789933334638460830863012154730679683049737545160281582305039520027158141403805442275432519516975114987511502563484403828987844187725357101956491714139410763551382100998178318863295224089354110436171289236674317711473441156004575613857935802947903186710273135122934512388821226072049093290647716152026391828419205457729234939199662889356527012444,19612969155814925927900736991694631498815639143900750081709470615537990112217002271570654324774711607889679093067885009086620212727925361021546388555967618760690930383917718167829905900473725102007606380323545403188303409627969907029774876076466652636827981089598601596821629485556381455948439528301393466043329774616323471054547330305463639720319551756652789237846520745512886328152641158526571443916940675394167134193466655448590323552123565655514390433855054114283235652222186673800138041449545987929749641868001910765212175435331820335256408276886037716378072029444719891008048297796893611911457701948988529229282,16728597479991680407332164223276251930971882378040601546182090035388885277790620642130984559023085396113670088325023048100279567479347085329073035696608554975777409036805727779421519384442869313567486101701856985975948368091166211269762554257345698853374624187196304439193724792774291722910128170261256918581442838390388813651239625403911503915460141004046718650178671549506593787333200145941149923809156438433492770338609398675185696331933468246886804722117355530728325631706711888199439210221397335620762682713255422110226515677047306270190770133307509623731091673964502293431264279055367772707113499782043802219072,6959317283624626561280838810011851848606573383456333866356771642710009365943896928686358713606049305764133589953562485262421030190625379899341516940088176438653144375343629199857524649360799157617467464667207079997090732685762910728717721600193091207478294785009859545546272657408615665578978698966309579302786158306046780048259033960048367018506262121833776982527433736628482989970739839626561164331780819203300647377931749431379962789021848504353274218995997754499900534324222498419599756583548358913120017762065234354717544865856293340540081744252368993926137398125931373959455585431506453093937785431907339954440,11707820384786665143909181917722140695066077204138675859555940823963085499198625584153264077484611920625749300043796981737297557284495008476240804003977980903028035986014301427047695461308987163082644181568819427026377861293089760745032220979974314071873695748444473344481739404234865330820136242966321355292830007655295383627072182012764804101331409332152687101319613845603099019594628684448783718018158413013589965095889558760502141979036830513073469713570347578185733951700672935586145889495063730457422516713768592535269075934288536062686021973569079600458124449475763651523966025703378628943004868525425132768470,12680113365919882057574106113475868522128522384382601197321116786250024227710942753687346378669117549887826210207932325610070970266526443555090342822407043741408930676918514338947859254583933603158241276952467805479024344654828575004834480980171788527657050724406198542408746742354531228386476751247072501617975174749412587537766151828306153888252035411082379552917399551115964687725743020641384211728557413837203373250893065347048255589312756928959773947595990023044227966600250595372063312552514516053386563033360883348059069724261103859193470298590631028566611086928803669676829225666250863192855787196720603673760,9019657743968669607069997647539968262488442864840563257526073127843215521457164945521996034009113740811008633126128201485876365964359243077677187550395794512954090076458031575481109943534530172796807658845833964496790520042423061347000207701119849250007073432625973802817311058171823571086584900654526615124913824393095137876668486739795620319593113487319306758076868523633806281732675535191877729151172494277333403640038019691517232275137009983348569240826245496914996509643617684093222096189728055561573909735610063401084000594789204303691795045753669664876756897469727730211469836756344045393712182476806348262481,509727692658127329234819348282810282823358222955712460979035976368760532139665502509369544837059902335508770138210475703837249689840377266421270410968940058538125244069674567645496962345390684467242600183265156396927471901904730403435725549974213712745153254130090979413745442250230122176329142735628394058559735078808655502950813887104168441824680204081093532561399756958380811786995754253778833219233414597390819387529718886819478101169481249247654168746478268826094117295037052091370216680279456693786586815595643437522530315484348520350527079378100131478937805285900851443697897872168020710497135465069780807687,3842294189873253197555038084451026657880884971357471477404186912118522652991181539287485996470843289095459960588932515934990566949413638625169611068786524327230092661471599333492933504858312443510340452825109814219748343465626968500133039743956522352452046474898271016421645025612565409422475581907506677274527441400119913285024497410632467771786023570373229380492185234340140113773065511943229164821322784643171443642045254567266530741214826934397811463635644370547054062567012016231228876473774669826378368361454200858389911185989849447377758286974943747417740672897265471383352127822433439855380640722238771424561,12605457156020973444763168611522695283402376793806466187139735133742095649198553225011255516233464381926302993187553632508703365300132776800901755737316341235931477791227746456204649162573568121476427289406145613748980339685673661511024577823438911510307584137593479079190723698666793670318162798116104492476114229973922338166221669934104784402698512349426984473431614385866651807327515058966935011035923319124790759086336194395000632944700277782112868323483780168144642250558671981757792078139349701070563555668082796938131863328410412160150471825619049694173807371104601644825755844313657731729068891163705563867555,18221138784555811053296911040444811422299569221370698341523745856400091281377839778678778328149110548534138934160836481393838346908432982920562116626677959686450236292050295531261923474882738697393510842972966810110218027601675376030586402861098487543863740705626110087204717386977952136809165092530095562928623301371629208844732733664526090007002304626939446606391205626126192870615394522174649688440887870385705569710809581575204639778805466412903927058799148697158251622260213645585723159916754663707237605872275846686566820885362722073881904277317597403167380835907876296870877478221646920284310430371934404822311,12694464409184116198175216134705674117698495589897734763290223249700439697747213221960704240817308024376618649511257185410755720163743943692791263666036558979570909072667619923266653682384882259644954119285287063471541002032435823410204495631358202104734018269537402171761572193134509812396214919229814690930600798504895496564687656801956575973479011431776352638782289114699743527186781919502658003154674450714069197242726393985114420810547684173494018605147976810102913734546162705259030658206284298418521349062777115509219489672039075093329236647292016824670535351144784388483525751068225542810044999850751665224074,4201765615355271720665237538919680402664127861292891404309962354268106831635826650331041297039291644925592311983403700464576600435518882156854904159089879201301912105368413055078865795374091914623189759593456721300785707753873135853357294442043908826331857106210726005526370024055346666586491341046296314798619327898858072624823009991437876242325624019938022318176060332738994176297193724805935694309014605422020909137014676945305249645201662101488974241605863532571828450201507584679493905057922784236072997143238879363168245889469038437561181276242698369654938178116001428367837409133015026021079614840533626761027,5693818583095067032554302348404689889827513405370432124730856324552577938645345928545249455102636900381970277642590696482249653647276002965730520652542065397111012479589269283364878130676178205766673654461574816233876555267291293343730094421360715866449358521574582941335437947403997555554148186986038285554629922609604751054748762347310142603219823359220130919495866316927224981350998367935679597793982889611172206443879512553133682522147111994374985808397513270886689704297115982752710085691562031953231724109895260045500479387280386873351701423764105530811712645875225583048344423503433093456461313617037044573606],"BigXj":[{"Coords":[31961961449149592290215619337342545369164998201385135329342844666166714363705,64636392625998908156106021830673034903148364934246785109426074897879798496695]},{"Coords":[13561027879868215202586968035768135752207534764402067848160241312364043370282,31683215740694624076579960720726613640416539517460242899883851320256877874663]},{"Coords":[102970472861055393328233354777448191839076263179087526130927097177204776801806,19849778771794568183958877322544789075545226949228544528619329359950140265115]},{"Coords":[8366486354279759555693815735694831293559828965602250556327317858912116678471,24456250444071880675953816335612932507033433175255559522554349078047625549678]},{"Coords":[93126246885046599201299142306317944158536766260090154798797491446571717586613,101632074177392193573512178573083324222329391048269493231849116848088552218375]},{"Coords":[45944473181199785374833853975473363930687909609574532965286298616052742734642,49106561873713078177518155217967815241790729328033604070651886838013799968339]},{"Coords":[88807289702586806295763026580879412609419986472794654189482668002118698433065,66889255218792877467551818840857264643456782872798377645941824720058728156412]},{"Coords":[45745777770010867130655637386117976632006388263133845103488205463444756286557,58413618959379828248439575493421719547880693819703454359788283537541749522854]},{"Coords":[14931705718614911512649079486924798218629483414127465950786381421646404878840,70853895869521315016717813866703398949051565204254795550601147911581008651495]},{"Coords":[31702825468512650039750289022997764002837389172468049717092331147393818254752,90704921170203464181329063311130512192295590723462840980995045506481351030148]},{"Coords":[108133277897421036808605843118854356978565880360693563552498521263092161957794,33994893650793696043114830343063091347849012751372498052809673503667071259863]},{"Coords":[13603746174106309213882605187834221055267478293724779491981408043396477605150,47502402322605913877968636451206238145707201411072573659819652572960084227380]},{"Coords":[21962637032374642863765173367353663611071785709723940819398260699915154728736,65876190623954751874122457014542214494068664571689464338691288646258987627994]},{"Coords":[8139291295258406047002639746372064115101651961499427493344848502049438028449,13643120656693319356484507306610353728697986968072320539867387334577150577786]},{"Coords":[871083651129542234211830236854985246175496411885064575219875767816674532739,100904963893789549224657775356884044157291453214379932308347421012612568685620]},{"Coords":[98028745019433069815621229762947408124245116227553507407780733119772046992520,60367568163137055112812282822118701471566204774343904929920219271364583776122]},{"Coords":[37332951852807254347441974643993866127041633128152922228434313154811023954744,56046459898819968566785812285970001512876757161864884424831574905585289505077]},{"Coords":[11223798616675111197150792218010453124916879614948521844981845491687409376646,70914747125199464172751182264377339815163078089055967502760766110580370145293]},{"Coords":[62949410140974969962342726366577125978516456835571210444108422984760191628326,55668150354406094271153240357261264601037343235231498038021007487545647055721]},{"Coords":[7611358883569187056502001665501128526153865541559158134839099203014115911991,87617845479447207941483995353359860120852817257735643485765526341493112597509]}],"PaillierPKs":[{"N":25922769748919102678415192880711636156565612427571550685296776086119205445525743826557545692077634738129321690187868055737306626420419536394422682260657759329710259802294458956279773225258250955469954464209933873407784778802101265717840506851919529598154066919091078766953942869622551929743069097967501533345363150709912011028449270819442207860620552088412428865900112120786495620291333470644949767300948329241775121748888220588626655915013364614554467190860190736954650967874940702908395331234632114014125372505065096924932509595285205788545338407476139436404463823043865599023326570565049384032977060875483209339089},{"N":23930233287283899271771864413305422456138957780711273892670074191715648409585503033095084345383391541524625291548041741990557564183855401706042293717552023237439032182637019639795919249455653535670614575331737610284863144094845900714497635996654401300216924764570210541950557336240993007183309433063094227377624710274228010652758134777897718742178998545079447283838099902510469006366469099975469096355736757507201973304413688395278990349533350163833514531655073848517781662614171483003731680841330633223244205178982328422170273570503713081265847261211618499950287557687314846590616484106774575999250148317390509484773},{"N":23804125140052077689856128298352557083678652474445385365228110453726681237860799979845611556170894187976654278582576364089033396218674226546868809651353049956675922595541689542576794678062495339422204984765419389268325283682512000995221750412104207394441438666051694475950049774094896290106430636216894744335784327798634247450687264677393229214665686649911456587168142148024558282134024448427550922487022680890892554782651383972136386958126051377715096556862662265886688077689941967157694195467190297477735450118736949849327358586935699405848605265912107169200547464609552395233560924746135866463084686118233592906569},{"N":27732731445242071631661957657712700411367090291795241371771965432140171981887215839890743735562516245338158767440902124645306227526755834590210240211292920385793070069156192085968959067158127765511651425539136016999745924428061397793021945121990437538890398656832618417715425504589084090095239114803460787199036351739230987513003864153861252195944069425337294669643857426654756086277471320443733998616523518289821541295617435513033264977202437153989318832642208143170451837926277566396048774049270318848738844338850668187024045715008196311523744942555689097435377598835544336914580911633671909176827168167136470690349},{"N":24540078122494262833119917930091872139739129939617606686122284549157786865278292966087938309454800165081094474899057524752572006230843959997841521536274236615511587750039832014979332539924539915807860222967109230298738770371871063759834296194059907031260324597353713442284471130560805946122495294807423458083635025189319558646442212459161798625793784738344309603016513355951936699928410805609866016648244631951643648288242475041729105749202516848107495430809184564037582943457286768883109270231510808158554549441157152513493684930416951758705877335895250913277012541968048511163986915876606316087458297080987346429881},{"N":23068407873896187320610408658036992760323120237076281539139801143529656493030091268390954927616119732305210576479622679524747880246080257702939099128994719527894439722828526117361648236913823027514544862046712398251734066527697676237348724465158893599560473200351530224245041596340220963683429881340553208409699594299261181212989221107530971303522686320513564226387471374456547377291192484997988606654540899634665450162274963086331783789860908282085692296248300574631527561763641974772756130570734735297575564567681595756096492735284720794891113064512997620639494646662790341453069978107064092657029168133504185408209},{"N":23360724885676198523522179321150194474267520026708517257764444663025119039638464657158724624502663558960702469988070676415660798425916276572290617437202837750858738892140118363926690520956187802097449221385283612203760207950600195667994976400493623569930090999021596112553157677485561299069991215207522767873493631366488446241092099654975621689119086509041077742510323711222260189730828492291459421830791540197321337933505867430138627984859014648102694909985043765241359798051875756951108870386862501048751981261038842763679815348130953290890391440850806363449637432840586263665690832227799688631446932015796916844537},{"N":25572476038149983843824758627743773292157542015669155545898739136432359227667585235619146413408812705275735125477228881724887114180658812229689479785083051083069428146070988730518675361280497876215801249358736365876007532614766347833762716625529381645528767502376159614744663698030295284120589012492759402983796882103200388651743368106596836536656368370930363045639317610411594882976032564820311800297421945366798108347221120736308176815503106682839506833524058020959093518528060465861144447540812579976237229589574562145541453749754749768478003306870660214131556451734687719631047077200787163529663274266186702479657},{"N":22679491499676926565249058751269701914370165376325885490706178594236435587374452393672919867257890172146499232592163563478749644823548404207107209183759523050603597049541204457028947474998785130219644182203008088877544305999771879137962239304258371157231174473491797491114277983084811723764080082851754276992307408859865524067180300336894890064430698022388669278921501809909740064260359142339540812296913591956784925745003590749703099702370645409020780887758983568638652737043891478141095930983089074418014910987946825193073588506986312390146214478478314600989393866198945700334073322066709926152728868061176019551541},{"N":23556951187256713732039305973238937631620385080790804249029259279472926645248156172448686117325741554381537031072742207487366612992119859269685828207319515666102872111546619607137952974660084980511684952594879342586512197525409799350424247192892012163769784591542546626323584978204193899561072157767856334488337110957680579926475975853118319141371431419486620931003438350760541975587261961199260033262263106014958269750801811225868080849204705441859105664948039653986722714354940941410686784948916936213417318953574086609821961649007609305029496977916873440356977063491030736996785241653241262171162950673703965399497},{"N":25874692591276389940909836821933328634340387691760211719857424847912710687202655208899136151842265948895002254373718724704209721944297143062448179072459504026936041473424765480639475272190837266572978737262449980766383982513621598580661341958135147571122513631091491976191663115339463730624237942100977649124658328431032849468551008597071378488661492324861414296280692846039598797857140808360770338990664282941023358641770157837364612463858095463039043959476170224596463891235213200808423306885708639894810932553685021558027739945539621344374072593175483199343233185955959027063970833388545231587659014590298587532269},{"N":21093015027631740022404443614096248522776233243516651444497036871175728958780883068858760981924585432192986275662870128643941927265524238598903061299795143929360395711020210769824764384718922898979318706735662563638859312024117764087176816929100038836825165997745175858151391747552772916358596447916581236137266690055236206686429983418915105841208302705945838725058954761546083763560226985859597874827308926656876419352353487645531847757035757295720869824004015071252605178819856102760159009139713396577974830023684477215548955933062314225333947463154019890073099705030557644025494887348484646782031863159015194484417},{"N":25298229297396047246415163429032546137139715727559844391184017906947304850232141234045323209407471473714145852636924268416866274482603754141415609592221706725085407059971638122009913495964543366119323417218834638913881087432600102264473788528537095668778412431377856067113698729914757144153775835786313302871273438949909936263664301138604696985912220658568672102041006541952444982579070062275651333990266954050520365848194152044834016212084441028573044037025009772616765171118784908205140185837844772749992941537017860827787097838183799078426827486346760690086948873222139803967157701952297751113063507286886770253809},{"N":27142202438632787162126599492908508783692765215748557510315014134009044742375492012422395905792294364201376442258017321008269356413320158807932162865700040957744157446176162447390298999320446062496836729102114052332958615915307193716216287036998207324413342337908047902088094382893405585342830460716335897834006040665407645344104524772021574862180664953364488173834491400964015536206179143781066229852877159880337660767454184922616386524557470530917791514588890903382115919687896218697262329973216887300329083882938499296413225108475327673886217363092593458630101782913564451822536507792690041998191978031482893873661},{"N":24506900410165079432913879286738242981557799447704277709132563752281068885918764244597103897934251933625444124974453530023693766922128717584028552755128051187819589410024704161034785358235535327695240184593017832269373629062497324651346586921679971074785452914954524453931920025017233873766495332551435302696547239605953737313669053194482788679487077465271167890491044626060923037626210805459313170671202877996680415217025953459280403666974895608025476083146334864242075064839862857242870450430867849337473211116054259839281123892458791925377357496234454799948092884977174468592367921171996109259120511593665944142269},{"N":26694966767987840469949338865344547117483340362831650227215482575365406012636774021468648984974992022743149425563486792907591668251920735101399223711217247824036472514130615393737405150133409306326610912172081216216331513707092964488994949651842782342704418212963772590286378010081225253538245220740244206602153540135126863052186543426616293649543741875882042173380956119737322204906042367710990417544800462728321639324791151406955584010061660628304199783826293959912579926890912970052339895938137461119473504729752401310289221600181057106776643382986556174592325963163204522372078262520351770361427042538592078722253},{"N":28161406783438289776782541515550232234219338732182263528677255680862818571394539837092411279908340595856411618560352096707955778113841586575489526111758509944691006867155143609674220650793817498419172979829028602046249597147507621299153669762040424244341554256616377217119563525915851719009321686306763607672801085326365691030132510560260181669852932393003570340516931927914922146799899039434467722922041925474101320996856938035131446584298134298675299397155375412990353784006913691603024110559796744887732721945933471868150638226543773483734660294313186275340618342717882057017678734282256333631978096376709630195493},{"N":30290385531723706663194155723402482345164001328034021287910161482488063429892351584916277391109894294446801833020074687889362652138426091460224301803948089690115686705682426193759251182110547546779254274419781083851169949275087832187538168815749507922889270386625094587688358817642053715412200458038741309360104964334706289126542952674791148655002683650712544232003067953586569445443104249283623297733191839471659254940888571771772980381177972566220724293577306168494057111878161156955456998298372496716136324267059071403030493623531599851487444134766104137251811774500492630476212318493040236485031236879687941684761},{"N":21891762840438596060416034930044842446937758373617708235288562429502315391645647044939378215035677465574183685957522821315454029977571728750605988329881847569313802549118091978526315133726370633285214423147938264418314863217805659876561184725718735591303337902948467582966199323804114988231963307083517180657041313131586070203747291724798899561367507615511932716092324516747320587928666160741969956121773346301706809405054989477031949248189136343469258532041255092588255241987397760849320759799542054627513230744643622791455964220513319415609245199516100422991698341556744298439022451385568791478794837569530013904689},{"N":25360934335416714794999313991057897528923718232366653339706494176825638906694689891746545886915964196582662458688535283322287088397853865709093712398485753916163063777301385991907720781358632265326870516346689492128442283774600103789825609570294923480202759046857115137927714980847316960609776972337028789163184648676367675625026306027140091761009104192786329465543720196130052658782412428125321357130192023653185727111578488774341366834046035305712205910649341950409228079277410881842097288924692206421126356254520404943323384573694119449632324221088061482676921038116252201661916622983158849603411299895152156469481}],"ECDSAPub":{"Coords":[92492306118178589821640584737240636977398594678247616965910942704932180187323,27954057508764275913470910100133573369328128015811591924683199269013496685879]}} \ No newline at end of file diff --git a/test/_ecdsa_fixtures/keygen_data_2.json b/test/_ecdsa_fixtures/keygen_data_2.json new file mode 100644 index 00000000..55cb6e90 --- /dev/null +++ b/test/_ecdsa_fixtures/keygen_data_2.json @@ -0,0 +1 @@ +{"PaillierSK":{"N":23804125140052077689856128298352557083678652474445385365228110453726681237860799979845611556170894187976654278582576364089033396218674226546868809651353049956675922595541689542576794678062495339422204984765419389268325283682512000995221750412104207394441438666051694475950049774094896290106430636216894744335784327798634247450687264677393229214665686649911456587168142148024558282134024448427550922487022680890892554782651383972136386958126051377715096556862662265886688077689941967157694195467190297477735450118736949849327358586935699405848605265912107169200547464609552395233560924746135866463084686118233592906569,"LambdaN":11902062570026038844928064149176278541839326237222692682614055226863340618930399989922805778085447093988327139291288182044516698109337113273434404825676524978337961297770844771288397339031247669711102492382709694634162641841256000497610875206052103697220719333025847237975024887047448145053215318108447372167737702441251565075594802542407391503289364676930046848592889764444473208311524176750345361303715776188892120559308145482690640380386008098215824607516345906020591797099324696931930539129840295608183302807198936106271490859318518243627618367482381944500401418308985572354562059638591289588383179774841227539522,"PhiN":23804125140052077689856128298352557083678652474445385365228110453726681237860799979845611556170894187976654278582576364089033396218674226546868809651353049956675922595541689542576794678062495339422204984765419389268325283682512000995221750412104207394441438666051694475950049774094896290106430636216894744335475404882503130151189605084814783006578729353860093697185779528888946416623048353500690722607431552377784241118616290965381280760772016196431649215032691812041183594198649393863861078259680591216366605614397872212542981718637036487255236734964763889000802836617971144709124119277182579176766359549682455079044},"NTildei":23815206664659393600414832732918591362081086959256855451108811883313935088830793690110550688160373127903180149093000695761674277348327575728255258492470452704258920461298225437641154249481888087192237143947805411796310656512191138629555279666557122333244803756577286887501632314162770617970064401783626962319950524158923845138939649762251756759762119774585338772559055859463599094869423262313306255644927649977403492926253217608523813644206820059309357940964633363130901166057002430269910921882664166860038861390305316020579398429144038386189480114288127704265879389663380565983482028227028306457603727009698486364281,"H1i":14510201356793997359892744405553071944121896518459738320470368478827891282273167297002903311912769777071155241288755372185351193850631471716718530488323104261827697027757019895835360274243188719367049075501436153398857359555924247334095665350350441220453460409146684994664351725204034521761578947269005519140498383255606322844603919000682223940913285551513356600061526959181206093504072618536296265435830192715190515397064435874311583709516596584871136822289753837472532490128304199643440789002058080030111113389709287097531544417461853059085059819958060220257218705882557929843952675556987949500595639655528439052202,"H2i":2562656890570835296352376205216590519360952576353253013086344012422175466058176642832419040937235521572328705583208834436813588375562745525224328564354560731400723267162764903064018742843839822445601315505274421672289602485557719646504320106522113645676636456687468751723898215955665240524139836668877382766583475339565598073690853848639545227831264115164596396262772422415214665834769274554577301336288865874066248890243346947740610544045667761548206600923673948174739356732295677551749947395385332556227074205668024351973201205328576603362256016900712683688241615565934460363012498930253514800348031700419220337084,"Alpha":99930612749194478118600296908042506926692739692582613847838885872895917361241984244333640602599304371167273758960563944657238964168847145890094008171141820109486094906362559078696139635411309492242182207416966460371128892064206746882387386758007030887894419440391740224416422066158827171353996674486071321206545809261340407889645960240945172487811751333275882478086448570781023042237458085693984643299076063991520418457060933571240987187072863856077205628245912721319981126278018820722990414471130623469536651100186034442507467323080021000888531326106364386993840733872502601891369558638525326664561154017828847672,"Beta":1472506745866574115259626864190224692004809117918934787166846528825105924609688841466108295556523488652122781674292297444292995560548157322502731129456683958121540244723666433763823118509403125487290004612301144261032505590317683722074031806725573843523098435377672727847103988767892621104751882955851738010346666992587376833949626244593568297587354693893573786831021202044714442955117877945963339672065587195524871759098746680962314094004915895821503042815585664974984481266334250938197696203435802781999374052416565642364570792202973860776695581419631252848636379297475201116274866616952484297948956399638888073235,"P":83104757259097189186950079721727937164047733672638603586459353944286466420114424207639146426104476267980570400699074675491296408383804082762803049161909665127121238239604267151066446049707844668847402565424593554013870425931673959230798027449894404276925930305256920765401340481960562820469278891866471990029,"Q":71642128110699780750818062148317314680771514115102777629050114614166804537355399484072749627185009816049031339010525295431775519909278950430775769096405423548701628777704430192232627139339020595673609882501846596139297041913744680629890377085537497999944390724942020172896518996334279151212334736977022165629,"Xi":57247727253443308067353212155912907169143973469345000079270234591786686254614,"ShareID":99910913777216787121500121711080713911605201308487494263101624819470958719076,"Ks":[99910913777216787121500121711080713911605201308487494263101624819470958719074,99910913777216787121500121711080713911605201308487494263101624819470958719075,99910913777216787121500121711080713911605201308487494263101624819470958719076,99910913777216787121500121711080713911605201308487494263101624819470958719077,99910913777216787121500121711080713911605201308487494263101624819470958719078,99910913777216787121500121711080713911605201308487494263101624819470958719079,99910913777216787121500121711080713911605201308487494263101624819470958719080,99910913777216787121500121711080713911605201308487494263101624819470958719081,99910913777216787121500121711080713911605201308487494263101624819470958719082,99910913777216787121500121711080713911605201308487494263101624819470958719083,99910913777216787121500121711080713911605201308487494263101624819470958719084,99910913777216787121500121711080713911605201308487494263101624819470958719085,99910913777216787121500121711080713911605201308487494263101624819470958719086,99910913777216787121500121711080713911605201308487494263101624819470958719087,99910913777216787121500121711080713911605201308487494263101624819470958719088,99910913777216787121500121711080713911605201308487494263101624819470958719089,99910913777216787121500121711080713911605201308487494263101624819470958719090,99910913777216787121500121711080713911605201308487494263101624819470958719091,99910913777216787121500121711080713911605201308487494263101624819470958719092,99910913777216787121500121711080713911605201308487494263101624819470958719093],"NTildej":[20539613942852364097890357541124859329931817468396278432713468646303963073659662742703665137736867247354367523800071318544570641421320510992705137876681425752810096966415479528824625129989063402576946505816887222102561441464103605308386975248012283762854115939987945603503283072741824666735245204091384515192454349252950007899626081034649919068642018312817079235168086885705851677572363277983076857313399016624874649811334825694862350059490166759704819411086564625186038339099281295128259092469609539775245598320922394808913338827772001777479207381548603315272620456484970681705115865233047669675602308688791376160589,19461028678249357721701139019984545699598216253588699892259672060166427273458875608319855785678884811755179389274380053495578644060470229307987007292965327985966772681212738091909180148035785695413643708212165777295662698493311553457174395686873169155288384255670661532430410131045712913078128214239252258473814281283319061613409102410606683119900924722782015902970301519339718368508022893331969649513655635811522767629123667744907556474126774472529158147258343482417188228144974952598132795041139358631852141986745214674779692377899411672630850213748161088638857089501019216868292821676374914063004957409393293909513,23815206664659393600414832732918591362081086959256855451108811883313935088830793690110550688160373127903180149093000695761674277348327575728255258492470452704258920461298225437641154249481888087192237143947805411796310656512191138629555279666557122333244803756577286887501632314162770617970064401783626962319950524158923845138939649762251756759762119774585338772559055859463599094869423262313306255644927649977403492926253217608523813644206820059309357940964633363130901166057002430269910921882664166860038861390305316020579398429144038386189480114288127704265879389663380565983482028227028306457603727009698486364281,24531363009049563762536664273685630249930678743601473345646756718446749360580428942513295608401046098557387011967587876621178423418085640157221932880387840241062539585907115950101921176093340357598786734576629107604766098059509560466283874031181440387973563913507733219768477775440248994272649062713092103053254889978195382189063452107439308150731662099755008823588080977928436274879799764825887538020606485093127463680041134931480024720440536560752357773730443722294290727915022250638670491342013254556128005158924861347226548459626859027825687870031912255326425000561908947972742109607669897905187712585858898757609,25485947141960036800495601740358196336268148055632283852581334267632567089581351729697672659186150817483946028874699734841543360085445274610946793774678284845142698994270979141586640525566502581978495871744643885460820923876472270768798335817566781711314773489485670479771252073613546268231833675772584402239718946768734191504723089294480532048176604551680713541748910822012363078082926628834536634899606309021451196325472880525430322895659546741570135136047631868000597393506058143850364801619503318165686086392731222189995494225633540472226098357551602534472541794408218767265775850366289511546336446350346021282237,28927199961592509462716713052933904239681693743133323458100757563361525410670677174848159248824087482997906403441479071298957717300803186875289912194352025314864665854179681659546207985006650252942140268140510157106320849846175665072784539119695315757729095462689260495430463870222739869312073694346079553731438032339737072477343055235278557275309616493517920166164080693605271556685355062728635594753076381152709174590915306592547837200121302421882042327338955791916538647734045471143845013412592155994390976714634271247514800401724247381959070976404354024140134277339724455784411154537706347451440209596089260579033,23535119694477523772171748044630208131923028017288499693412795663706886468394056769073862998142660508474676105711590469240299300182072142961838102383606369450702330959729879893242049940029310408964084662077585876233411878169942718467081776763994846585950049650660912827541883992039288017630464390592382481783566823924532043610685633953209522603678841504652207254189077646669746333277037092923165111872444873598439940966325805716105630151638779643981500665152639984434504817034412086671254173379166038071662889121653550757613052820175939040916661555723756176613161036717523938816196299007092417098079561970714605061629,25950783447263038071689830748627856944354421735888733670277679971199180982562433131778324823115329151828330351648021612294094370722267669972986008148650808031918722892417970047773133521052009921040352676366121022268583455702531977371124075420219730460605780729481918672698487964603151661149289116143779941433746038933525309985350586367303720987487112290090195247099032317451409521767630753382551078895196505751734814139673689437231496521554705226938471456297964527299627857211400740652357956604961830754401147898467475649318148547949522809325493238323065337997986089837089904293908389128632840557033917922339991780941,18687318215344566555182740902454336428592486945614858718824661784376438207943593936740995084200358460316665071770681463630810552799361606949595415859491617650913620153502889285378972038135570359724693463761135116433672709408902151793979112715679738392883186006369274528906256519536716049908878346476950103274343269649895419042195937774381514132210454482820166758270346958078142742840173830940449171621914508101385104081796180941351697633772994457709351610367195330318869580666697900958479010130985251846923421963647318437209519428820003347978947799013079168765159404172743072632243706939700207639779907975142224264481,23171083837957860801722218699383337900446240030786871268841926233540016534306722256418697981846104677203759841627977766724259030420015851980511088229043403050763668171722648141766116654882525867416891436685059276174192868946692072206824573955678962077288068058032958478942750338128252470165933443869447212456023356245726416751721989152798706366691818486325734110680894776063318626260722657549472271184224308146689662638536101291469177898475337027531732897213355102104990685266062044811809193138366772764276162181116512200063463469172637189164324496242489479899844513951546392297220122152709400797483802836017803985829,31343857270714098359641269819793471247744609345771779520849062499842222751853736635128030263011267623933026775894009843057499037409921342064326054830123558338476304900840753732976691522721379417037190976719048367738172877422341695489954487825668390415147795382659776979019893183466662138357984500601883268994989224933833342232607751640920642550766835871191739404896219865225614116435580799461951708239551693029017567595268404121330207564314786956323833427106966279493560190075571199071036639702485305576334075428484139050116713328535867597124971991546934922511844853709001583656359284723717084806850145785405536911177,21157487427733991932564510362138492162446873104287756897983482468142107066461483198236006898398559574298806811271053872211924774119515269456039458266616445024300383802406544466004007569246261860103312006457776588799344222340569710165666518367783547810282003032927364478322210948885423703591814633243286070072754280297773344097615910071723846039979528910869815670975142743376293197136856592859188733532786144697373533341877747464753616005694543102759948736736802569257325101204596297349394258616025918915521692968786299735438817719576226325356937526633071323693338940757362235570825853130085312301448111119042363796113,20871071186633559430638470998115518791893553646420368867902204568431630269565952322291766136370093127894084798814242475456617969102595313205728405129168253735048454253508700456761223106599134617920774227174015124829476988377890165462875183814841087993485125686632410376362585538078467534668954228084080919739417042353928509644795709201564083148094079836306167650314513450129297783489119015593642581024870311297891618816623633162063381775243950740681581620150958717466968747843706102214690157071025611480716612116918336154774385432247274600064909320680551901771492165221773721500541614228617829117370166464409020423677,27392140202372139560911530190722295626016991167776777076251374167016701252229100335980281077736021393527993281083564981442696373714433732500818431355034758384480955155409564373832745499649881975977124862697809360957420580753883129965594447943274206109113518479198329538838000642865155652137973709624008263285324174285285129803357738290385065522262059795474318914719823768887144641758090777562619592046692917101170170722723905514971631800061092086777420826999668590868568525034863406950714560799453233548147404988580929389926995856613912328981176466707497680180241272497358147647189027922268738449537259460751070153621,27430458285560064975603737623690566617914765114564307656159371148918349993794669623672608540855772729568670170546349850367039352526804750358257162362490778729908291097260480430890476823722553654389178498566668573496227008913481934125881578164602723285712928871252207939941804689355173665470036039114037118963971589320342018774107583274314158608546842149328506685304690959566263296291871998398637364399822435359987280203416832697098234360106966146607816540746285266790106830402077656904149244001383199485864465648143588026246539864484902228828598281873311925831114015086450712030764672165915248196209070047454495085169,20958576649034914977467969756965874238364659071947031154211972997487243461262394795340258789930977809611131615831278870909123144191655991893039673506539165135637011485008482874021240555941833074286915507794874804218274011487390148860550531668300157069443584231888571925159473970195937554740938933226402208131160317818926784959057391389980505131685522579677264162724011263439981256344785140426649255485125637348357522582511064347878764724812085894898146080695383734063354384186594813474135513405234523117338489484424618032520881618202129068318264606277435174234229102947510033247339629069254901430086639327996737230861,25673210614761004254141737312053451635018146154378993341101985326929566270344015265597835170941666913606119762699769929117810862190840467973932188558749547474174367822508601158829928161219529997833862214002106486508027112865708012732033692783629855485545330232068552007350877531730729790772847199443436084419382562932662568511421420283558235026303217907581598166628555941188586096538364407553738314729036218493332920854764055946289816665260688813327844579390598566768671973314358968068459214729157676432241630688442073088681756498136814491310636028421098965714509622937097403466307515165856202257786336739101389349089,27062431131775909264962122516003720577621307700606752850978674545503762322327045712593154396229756047740198870458644425173406714147601486563284216353367017457813364860861671576291918230182938220436949095109018225648486931358793025228571750572403143070647269508389021099989559676856968002395615757641794675119572488971947338527037552287756390904188517823120698354616567162661395526975254448758091053074808436661809101512025437321837959528689272191238705432334775200965152419124620293521962173467865862080429867958898040527206234108561471429991355210673373595922083144022410446012714221026174220695995286555692560595981,26101397013404440939950108603288565551073409553356897393691328641679505760230621741096317929709636865532238670826796537369580597665138924272200816037026280780915781305836081579178356868109017075793286763556497902869947712856535743263321959264839901002581734771178344662509473227839268090064000382806059250315977679226653239225555007655990623485545590336008766750972486014525144801720879444739045959169483687885427725508164188831961197284042818573448808100923870021600896976125650269597381009562192855793477760166114366163011349461311146903814241124631772470784181050979028948750586113514587005436500903242591757553293,22437602225740742482465534898349205983133213895660550238212001804732032977697798637757435728694311659299624886491819969612531644822478331097020027346346025174540910579800256280214031292073085792970245723432769912206355626120327772649905875827091190500315669126429992547075064736037570537735332469814000462556933603719315364923773085086614780916637137068518726889173784282955430621992569759561719528189938429235007732504425905045067985337249988673084527372002559031400047880307427208848753891291386460253720313523072063965808016289774609282102972264056704286287440985034888143293816594327214769326166521224390393446693],"H1j":[16370062914568124684409954423220013634799944354368183091925443712820668316759795091290952642141219645055533606292548565759917746455430426634828957426644826424037530474618159463204943752577732484149675671820306363344833458247384057865310742915406677379586789735200748327711872632191061145184949312294612467345847214916930759229195852858849386686352293049987465485866498220082468131280135383612600619493426252446949294373638968518891137429993551161437309269629260378927918725566711632082553316166822070110359114229533322390061282040482480263995079579444943917107997110057038662405191417861817663789094790962966996587522,5792666313208572350705907594949414590804636531753541567087068453778543363077542142305947911768781865374122070750607847515026168979710170113788718287465368491981654823945993941924700096393523941715256095048825025361038086570514643251828085846380954791657627403414038681940866434304045104130214177360598208974353162505514170835103706979081795485247158115653501838694614859268884296606546104394637012764653804556264770973741677326601115655746125293204398034469241183574629519235451142797709676366285591723984602961129858687877266469708766607187000988412118886394000517917001485137799190522482532376333362935442751367745,14510201356793997359892744405553071944121896518459738320470368478827891282273167297002903311912769777071155241288755372185351193850631471716718530488323104261827697027757019895835360274243188719367049075501436153398857359555924247334095665350350441220453460409146684994664351725204034521761578947269005519140498383255606322844603919000682223940913285551513356600061526959181206093504072618536296265435830192715190515397064435874311583709516596584871136822289753837472532490128304199643440789002058080030111113389709287097531544417461853059085059819958060220257218705882557929843952675556987949500595639655528439052202,21994027187251658420706956116678134303619268245311594874227984400819404446053485122189884678892175444688722527594580466254690437593853064923544979570444911946308283663229116693350631331935027065689358169246815279257122823014594309629197723508317910829246255814111959552337648906237682616732913305786178221005434606679461852547394872592127050442856550471832240167936976142756988960345619830477159914332536955389792251800932867389016006568741180137556936582683389834385412181167798283357296952856933963222988284608097870458140102834156304710781157917296313315513842893014212063887070100364867105131178923785373561146050,9913834538682656788610829579771569556624609911472542281771864528920206652057360227595914694025069327892774241543292898072673087864732558768588752951687639831868499912733997907550450742144719953844448973554109420086839278177283587750852958353526057789017170152122423018814264172807655239353760715885145548388992476483731471865364270428702324445078126354834888878640191523880163270112743069852403951565444480363239177556818094412397417215136415082364220806171351930690164376890892251369372868624028034980680685551131786332553623705883769998271596791035214982761974622986462384695349153129828098712177799482890430520965,15464554656029222110560140639422624868539470020281691165975400448606613120973644407534365935510334228227263162749065335291017684520353168923100727746351715681760916446206803485743114757577242723665933043744987644589191843035807511863595701170012104449542518101585729174897996392297770818633483533801844500665798250501473521227123975005972911918718226524366806206633841675388137041998857549215313632375036761617534744890091542919972307048750757690677067439820416806817051344016166652866968067639055986253789416713411110543055264622333767216550525033482750914452894139691102713436731472281130988207399023815239852528906,12865788614422531768878171769038267076266208200249164027644212721909963715015912538682157638127903293282023380796412378159235431043017021949518573892381565899437599164703723050587964116914107635838030249942901605297513982608974593500166572552953195544515492725593747884602852061628830280449190167844572097543184555448060083835007200101317266753106995526429573085540857281097156159258319440414895242242967023265742835942344738184941128584859242462621792495405423196954908356769683815889035326257091875874458718611430785903143039161526479973858541524126951528796262613552089943663340076548393182371918642954593889432834,22194516202811321146792934079465991238594712937226367504517257988113211333368349800836879103947252405610400726941861867633710543721876626238467090611506859331575128297406631557631820626534381998686705168632059305910804423292984195597625141279765512951234238593649775486094326905655122386938572411401132183960062730500896105597665702000968846572795357957098192758080717128908256523579293163137417423771381528097786100281383788052729825837521137512379280310081930804124457815661946839040621474089357381345723789618079958299474682840114875558952249988571746058484000722421698440994062460208554903525444210802321182968014,2022329329707369117437055740094404969047484980501833952214571687130852032499620508208708908589247080600189902502365407836277381678968110704345539053376355432754797822267575827372488857681103447936055038802753292113151984972961755143427625893918328299356797405969999266508287378495280713821635381697950988327467894890827305051792226857027384943282520470216088404776455333696749084292781033264737672933515625823807581567568754027253581653106384383593181057349330506068884659072076739226363616897242406137010778123983315619151551375977509919335513557274798510437948502408760645678633359245877721858614575061700591393721,21638702445456858422878500352234793329413106731788942261751796025224145517964611169394617788434763506002565806620170893339110273126875286455095506459298086020278318872581385674653253080383128797980439557511752718258375238388481802546638936192461482797150514683008473213407715728694302414916863995043974867827876036585791719812271742103323384468954527534596036617313432433874380308883492321501736879178345427074046787174556058119038049586737477628511165980047288251497278209275581664775606335268904384984155864116270266473616061700061527150495070719210903471680082400487754898061609554671248760480063619759950744280907,20932768206097680299943959313782719928339866139959731166252002876096405653871733170637914957728294590217455322823662941811142831487382716004980657707514358763150029924714520812685697751484102120909926147024006189544048800446501267477163792293393919588659127430522309503845365000611784195390022621092266420671288509706282186373855655358090019051530324622779193478505342408854462043136412488215465955955421082850282626458587043647758494935495915329050933653468179762936320308005669155322055934931071589853638981754901315764484414249149121368560265856082417024956730272011998498550756243974623835494966366962683389714964,1365816667585940330490355905311774458514715320376130020996515573937571923987574784307504874484515899610747050162880466334946062918938639620242137371098595406424267003818882220942016240927776918797542668204898851284066695289242978919397682088055368818116198595348273129318762376760634794532531433638073562846988038755248023571028829475051882101071203979111269507596248527906600986677728810751499828436067766182628039345309355341295172437424660504415028913205507139100147921515616240146193076677157859750716375066201587358526136840334151066553547201088947345861316322897488659331106732575557394540428972305438213375814,5703448175361065536885380258834894924349694750000788978424055908887487214267289314410654116737467233333514153490994654420800717947051017245903088635547080581089891657444714373263301759995815635072257679749046151543038146531810310826817366207696928190231298874979984114964348460891792295427444943206125809938612729939665048974349693961742238426880015130297226114935093282566300228257419316454068258492582819117310017835605391570376283517758701794125467889060184214275911038527696714000045849219024045243597506828846590195831908281658454892131533791810760325400211405258812142759529523572815227489710851557846638137542,6412242406353564485058502679404605624009190790593030266854505291800626778702270387175472290319448965303250433574173375628339895100997329474893279692868549940279796264731093585208695625011062617868491258157215447275957107991387222489580499373804335870682739788296835432969262878909434810429803264643527538555130662379672012787064972208117475596665593916782896686056579449802576468324812730306559649834202797329883549294599723290402017221639617907711497472325019619452322282704828796586508386419927496666562295856731151167316262475184222145101211618002798513055006067228431048839763646095282531119806559583105533794495,12506213831497706601305625665856619892819919408470741644330076368184175310515183251146177621238406207206410185643656979107225155831507800032694528257147716038515158570256044209419514879851010106278924359714862316802415670557334433034976750101928783991744583819411313589306343712690219032368416678985323530251239318661396466801994308940886752046080901718450406046375904389766893043894196541576969928137946704159382893563356338387889137855413730990126192021766856444171515497507122402917749807424621383187173538906785892654668489198127757882153223185090960714890345630801099413698632285321494907662894187137142803150791,4340320683992731212484211057800765907410470847269768304639037529290512671362801376775768288042129836088810539204858832843247178308000345604701431226310915807542068901686097542648829915466491213307097734259829414895234796525272600474326857346693882386640793824277606043756669695477090601330450743232413209505539149906338741119182508496705355703793044044384724643256986023764031438551900073624644692938223394706241422593949897781383635695299729171084301185179708550600098470031089086344919627503113655735768701217637285566867914251954499504690075652022468818725559007318841314414541437592229352428286215595483845053638,11992304082547451264970842283976418853821301172975086658682116387543359417074268643442593212371361490968819128789238354995117145993279593426471336648259583293294202599078859260437992548184464009386152763827946804967424362206055435693041324410893236957405711025923054702040161696386453571055246924713260145964584750230359074777621444549946362450468684233332414284037283955916761049858000878784786268023500095161975906495439332741618288811384519280375489794382891880648564800750663555801045203854227681083222146920912455217541211811955477767635787030014152643158711960638325867606918508708678622347924499914937535267162,14695333877946105505101457937623624377562698430478247685331048607650568913937201633971254630714736577175024535322415669442798271475956496536083972430246897654017678266490639701809689918981250971730052435032797344400248226649579239038593902835536123498617918666329121083751772876090103853533035181736615043011673643017303605152279678650202512062770466963460251942403425462061196179491356440328364636048438335959347603428717042954470887883300891927932651483741068303515425618933688194621659816079976510221005329843899476003615861655015952079393164902282608831513778303062716347528913475870793908798463564832083549613643,6361624891550612817090909815430156259585522002511378700573226127309539860650523892977168943678195716824260472829831132024282728135758912178943090813161584286046605117495775878170654691942858452263763077967647297167266507685944611403131069163214134338169098006751105941940463654618427873599267528041887836331948305951890335742121311832653316741398094161561749334956600724220433324620401615490879450816097431926849306846384679126203940987154375373597650036103822699248044107851648286585837187416880739896147553285981829664828869063480707437325000260106329487862878699057790666160151383639198420965781777521408308842299,14948927140088320458060089936345715166494298631495857212773926944790409869483957673185876995292328343640197788589621807184518806705821872810447516194927678801617268846361533345460325613772855110322242304569109406957894646727384216069315325052819333705539766154972989576988248927288284161530384846682668538198851543196833452065614949748530253693700328342501577900059842225778082026779632761099626760985225309957646536118173500439351182747667021029407125807666947346322131872894915154624415940708414296769044070685030466034270063053482191494419465005898644603408406165778424189251953592599788015054586521957253320449350],"H2j":[9653640790649475435050720061635061544335995170813227062007808546473167610366804040613054457009646767723479128021709179513573358845884462519136809844401815066012655857973373223748942767836422506840658738556503260986697250346171921063441485400421533124068250604530993514803166454504801884882297625678932746326066096923436475087338628767636689481829832307623108408425959669915171224014581673426602770656342925462023157550194457295116217893440581116140543598050947318929500123378985275492765280831578803707538206440354119287576298034238031692982504012470196898579719660373199491817717767711160029710911173725338539566802,3578111860663702772408903345930659472256129868015762875031051677614699117364424442270785915866444756532836287879751640816575659073006676007210405202315496945346450727441553016187592354415793891110773645408147683476571812485850037389853330648238106038729525075512542830213816094853869971661719959033499816133612736102442725651388405183329714325258711655979055386253406319598230253658818466953001815116530962213661362799968355793928849708876651937113231862631691372187008559216884922263381652908899796744393080985272287681952842592674663712445064149288160957033524932550150413325097150870149209345404214256294282382085,2562656890570835296352376205216590519360952576353253013086344012422175466058176642832419040937235521572328705583208834436813588375562745525224328564354560731400723267162764903064018742843839822445601315505274421672289602485557719646504320106522113645676636456687468751723898215955665240524139836668877382766583475339565598073690853848639545227831264115164596396262772422415214665834769274554577301336288865874066248890243346947740610544045667761548206600923673948174739356732295677551749947395385332556227074205668024351973201205328576603362256016900712683688241615565934460363012498930253514800348031700419220337084,22298685304249156715841839507145325522077048988910268345524279200863227356693376151033928569980263444962701165900514081299580440300365488019578288962534096517468902687907593109404000193096117803450936780948162440311950526862133749440555125530434273281017640257175046682563772712146188162909037424635371282116160809281350332585723737917537784267577381007869736550494661878733387948458251550312048040279754696568539248453484809390032249968377837207868808482658171733689439009562188880777607125039187467565549644537971596666666932158369857160883674108786200103009448463903055431989786220430290067137368612432640074310237,5879475324785385886080118453628099122983640585548725925692818787221734315336181255707999432375105366554548265736590343628955580077952532008988837072008731794155978542038914506112861039350525606157951017828660604272526605818549217659336563240062224484914310161520768881507503977620229908361541865095980430141394883457555144123820008061398004875781145432780438239985999952863196781468403423593755390719871396312035325131303835880979744451815683310530516197085535308856850866798018523735074120787646575912319226234213646284739550604897450763442470406797690674949855848424274918433854009972115369882751833585035329242761,18385446607341413929216752317617998458160849115285197433981133872531647462267817752048089105851349541660795002685652456000086108157981979426453705134803682299691630928200421847304354380350114763235863451959398215394354125874494984531309790405988904217354164073819568789120760731377280912128364362051769093741704293517942028826498663326655241508795914202031051398724638536523567800437872676476082333745719105291491676453403521845621182329449421075607837301738332926110019535833222421409565228043580701032497151738816862657210572819375918881851411438625526045192015060739626198734346744421593858157488507552447503219157,1543023308301318791291636723263661645234407352972693347930324541592073282303070472660827743672362126204249434834670307886593868303926045601951702434485524524299146190187978789568968092026789881246345813079894138764374868096047892517784410005345559357208978859029831295378789933334638460830863012154730679683049737545160281582305039520027158141403805442275432519516975114987511502563484403828987844187725357101956491714139410763551382100998178318863295224089354110436171289236674317711473441156004575613857935802947903186710273135122934512388821226072049093290647716152026391828419205457729234939199662889356527012444,19612969155814925927900736991694631498815639143900750081709470615537990112217002271570654324774711607889679093067885009086620212727925361021546388555967618760690930383917718167829905900473725102007606380323545403188303409627969907029774876076466652636827981089598601596821629485556381455948439528301393466043329774616323471054547330305463639720319551756652789237846520745512886328152641158526571443916940675394167134193466655448590323552123565655514390433855054114283235652222186673800138041449545987929749641868001910765212175435331820335256408276886037716378072029444719891008048297796893611911457701948988529229282,16728597479991680407332164223276251930971882378040601546182090035388885277790620642130984559023085396113670088325023048100279567479347085329073035696608554975777409036805727779421519384442869313567486101701856985975948368091166211269762554257345698853374624187196304439193724792774291722910128170261256918581442838390388813651239625403911503915460141004046718650178671549506593787333200145941149923809156438433492770338609398675185696331933468246886804722117355530728325631706711888199439210221397335620762682713255422110226515677047306270190770133307509623731091673964502293431264279055367772707113499782043802219072,6959317283624626561280838810011851848606573383456333866356771642710009365943896928686358713606049305764133589953562485262421030190625379899341516940088176438653144375343629199857524649360799157617467464667207079997090732685762910728717721600193091207478294785009859545546272657408615665578978698966309579302786158306046780048259033960048367018506262121833776982527433736628482989970739839626561164331780819203300647377931749431379962789021848504353274218995997754499900534324222498419599756583548358913120017762065234354717544865856293340540081744252368993926137398125931373959455585431506453093937785431907339954440,11707820384786665143909181917722140695066077204138675859555940823963085499198625584153264077484611920625749300043796981737297557284495008476240804003977980903028035986014301427047695461308987163082644181568819427026377861293089760745032220979974314071873695748444473344481739404234865330820136242966321355292830007655295383627072182012764804101331409332152687101319613845603099019594628684448783718018158413013589965095889558760502141979036830513073469713570347578185733951700672935586145889495063730457422516713768592535269075934288536062686021973569079600458124449475763651523966025703378628943004868525425132768470,12680113365919882057574106113475868522128522384382601197321116786250024227710942753687346378669117549887826210207932325610070970266526443555090342822407043741408930676918514338947859254583933603158241276952467805479024344654828575004834480980171788527657050724406198542408746742354531228386476751247072501617975174749412587537766151828306153888252035411082379552917399551115964687725743020641384211728557413837203373250893065347048255589312756928959773947595990023044227966600250595372063312552514516053386563033360883348059069724261103859193470298590631028566611086928803669676829225666250863192855787196720603673760,9019657743968669607069997647539968262488442864840563257526073127843215521457164945521996034009113740811008633126128201485876365964359243077677187550395794512954090076458031575481109943534530172796807658845833964496790520042423061347000207701119849250007073432625973802817311058171823571086584900654526615124913824393095137876668486739795620319593113487319306758076868523633806281732675535191877729151172494277333403640038019691517232275137009983348569240826245496914996509643617684093222096189728055561573909735610063401084000594789204303691795045753669664876756897469727730211469836756344045393712182476806348262481,509727692658127329234819348282810282823358222955712460979035976368760532139665502509369544837059902335508770138210475703837249689840377266421270410968940058538125244069674567645496962345390684467242600183265156396927471901904730403435725549974213712745153254130090979413745442250230122176329142735628394058559735078808655502950813887104168441824680204081093532561399756958380811786995754253778833219233414597390819387529718886819478101169481249247654168746478268826094117295037052091370216680279456693786586815595643437522530315484348520350527079378100131478937805285900851443697897872168020710497135465069780807687,3842294189873253197555038084451026657880884971357471477404186912118522652991181539287485996470843289095459960588932515934990566949413638625169611068786524327230092661471599333492933504858312443510340452825109814219748343465626968500133039743956522352452046474898271016421645025612565409422475581907506677274527441400119913285024497410632467771786023570373229380492185234340140113773065511943229164821322784643171443642045254567266530741214826934397811463635644370547054062567012016231228876473774669826378368361454200858389911185989849447377758286974943747417740672897265471383352127822433439855380640722238771424561,12605457156020973444763168611522695283402376793806466187139735133742095649198553225011255516233464381926302993187553632508703365300132776800901755737316341235931477791227746456204649162573568121476427289406145613748980339685673661511024577823438911510307584137593479079190723698666793670318162798116104492476114229973922338166221669934104784402698512349426984473431614385866651807327515058966935011035923319124790759086336194395000632944700277782112868323483780168144642250558671981757792078139349701070563555668082796938131863328410412160150471825619049694173807371104601644825755844313657731729068891163705563867555,18221138784555811053296911040444811422299569221370698341523745856400091281377839778678778328149110548534138934160836481393838346908432982920562116626677959686450236292050295531261923474882738697393510842972966810110218027601675376030586402861098487543863740705626110087204717386977952136809165092530095562928623301371629208844732733664526090007002304626939446606391205626126192870615394522174649688440887870385705569710809581575204639778805466412903927058799148697158251622260213645585723159916754663707237605872275846686566820885362722073881904277317597403167380835907876296870877478221646920284310430371934404822311,12694464409184116198175216134705674117698495589897734763290223249700439697747213221960704240817308024376618649511257185410755720163743943692791263666036558979570909072667619923266653682384882259644954119285287063471541002032435823410204495631358202104734018269537402171761572193134509812396214919229814690930600798504895496564687656801956575973479011431776352638782289114699743527186781919502658003154674450714069197242726393985114420810547684173494018605147976810102913734546162705259030658206284298418521349062777115509219489672039075093329236647292016824670535351144784388483525751068225542810044999850751665224074,4201765615355271720665237538919680402664127861292891404309962354268106831635826650331041297039291644925592311983403700464576600435518882156854904159089879201301912105368413055078865795374091914623189759593456721300785707753873135853357294442043908826331857106210726005526370024055346666586491341046296314798619327898858072624823009991437876242325624019938022318176060332738994176297193724805935694309014605422020909137014676945305249645201662101488974241605863532571828450201507584679493905057922784236072997143238879363168245889469038437561181276242698369654938178116001428367837409133015026021079614840533626761027,5693818583095067032554302348404689889827513405370432124730856324552577938645345928545249455102636900381970277642590696482249653647276002965730520652542065397111012479589269283364878130676178205766673654461574816233876555267291293343730094421360715866449358521574582941335437947403997555554148186986038285554629922609604751054748762347310142603219823359220130919495866316927224981350998367935679597793982889611172206443879512553133682522147111994374985808397513270886689704297115982752710085691562031953231724109895260045500479387280386873351701423764105530811712645875225583048344423503433093456461313617037044573606],"BigXj":[{"Coords":[31961961449149592290215619337342545369164998201385135329342844666166714363705,64636392625998908156106021830673034903148364934246785109426074897879798496695]},{"Coords":[13561027879868215202586968035768135752207534764402067848160241312364043370282,31683215740694624076579960720726613640416539517460242899883851320256877874663]},{"Coords":[102970472861055393328233354777448191839076263179087526130927097177204776801806,19849778771794568183958877322544789075545226949228544528619329359950140265115]},{"Coords":[8366486354279759555693815735694831293559828965602250556327317858912116678471,24456250444071880675953816335612932507033433175255559522554349078047625549678]},{"Coords":[93126246885046599201299142306317944158536766260090154798797491446571717586613,101632074177392193573512178573083324222329391048269493231849116848088552218375]},{"Coords":[45944473181199785374833853975473363930687909609574532965286298616052742734642,49106561873713078177518155217967815241790729328033604070651886838013799968339]},{"Coords":[88807289702586806295763026580879412609419986472794654189482668002118698433065,66889255218792877467551818840857264643456782872798377645941824720058728156412]},{"Coords":[45745777770010867130655637386117976632006388263133845103488205463444756286557,58413618959379828248439575493421719547880693819703454359788283537541749522854]},{"Coords":[14931705718614911512649079486924798218629483414127465950786381421646404878840,70853895869521315016717813866703398949051565204254795550601147911581008651495]},{"Coords":[31702825468512650039750289022997764002837389172468049717092331147393818254752,90704921170203464181329063311130512192295590723462840980995045506481351030148]},{"Coords":[108133277897421036808605843118854356978565880360693563552498521263092161957794,33994893650793696043114830343063091347849012751372498052809673503667071259863]},{"Coords":[13603746174106309213882605187834221055267478293724779491981408043396477605150,47502402322605913877968636451206238145707201411072573659819652572960084227380]},{"Coords":[21962637032374642863765173367353663611071785709723940819398260699915154728736,65876190623954751874122457014542214494068664571689464338691288646258987627994]},{"Coords":[8139291295258406047002639746372064115101651961499427493344848502049438028449,13643120656693319356484507306610353728697986968072320539867387334577150577786]},{"Coords":[871083651129542234211830236854985246175496411885064575219875767816674532739,100904963893789549224657775356884044157291453214379932308347421012612568685620]},{"Coords":[98028745019433069815621229762947408124245116227553507407780733119772046992520,60367568163137055112812282822118701471566204774343904929920219271364583776122]},{"Coords":[37332951852807254347441974643993866127041633128152922228434313154811023954744,56046459898819968566785812285970001512876757161864884424831574905585289505077]},{"Coords":[11223798616675111197150792218010453124916879614948521844981845491687409376646,70914747125199464172751182264377339815163078089055967502760766110580370145293]},{"Coords":[62949410140974969962342726366577125978516456835571210444108422984760191628326,55668150354406094271153240357261264601037343235231498038021007487545647055721]},{"Coords":[7611358883569187056502001665501128526153865541559158134839099203014115911991,87617845479447207941483995353359860120852817257735643485765526341493112597509]}],"PaillierPKs":[{"N":25922769748919102678415192880711636156565612427571550685296776086119205445525743826557545692077634738129321690187868055737306626420419536394422682260657759329710259802294458956279773225258250955469954464209933873407784778802101265717840506851919529598154066919091078766953942869622551929743069097967501533345363150709912011028449270819442207860620552088412428865900112120786495620291333470644949767300948329241775121748888220588626655915013364614554467190860190736954650967874940702908395331234632114014125372505065096924932509595285205788545338407476139436404463823043865599023326570565049384032977060875483209339089},{"N":23930233287283899271771864413305422456138957780711273892670074191715648409585503033095084345383391541524625291548041741990557564183855401706042293717552023237439032182637019639795919249455653535670614575331737610284863144094845900714497635996654401300216924764570210541950557336240993007183309433063094227377624710274228010652758134777897718742178998545079447283838099902510469006366469099975469096355736757507201973304413688395278990349533350163833514531655073848517781662614171483003731680841330633223244205178982328422170273570503713081265847261211618499950287557687314846590616484106774575999250148317390509484773},{"N":23804125140052077689856128298352557083678652474445385365228110453726681237860799979845611556170894187976654278582576364089033396218674226546868809651353049956675922595541689542576794678062495339422204984765419389268325283682512000995221750412104207394441438666051694475950049774094896290106430636216894744335784327798634247450687264677393229214665686649911456587168142148024558282134024448427550922487022680890892554782651383972136386958126051377715096556862662265886688077689941967157694195467190297477735450118736949849327358586935699405848605265912107169200547464609552395233560924746135866463084686118233592906569},{"N":27732731445242071631661957657712700411367090291795241371771965432140171981887215839890743735562516245338158767440902124645306227526755834590210240211292920385793070069156192085968959067158127765511651425539136016999745924428061397793021945121990437538890398656832618417715425504589084090095239114803460787199036351739230987513003864153861252195944069425337294669643857426654756086277471320443733998616523518289821541295617435513033264977202437153989318832642208143170451837926277566396048774049270318848738844338850668187024045715008196311523744942555689097435377598835544336914580911633671909176827168167136470690349},{"N":24540078122494262833119917930091872139739129939617606686122284549157786865278292966087938309454800165081094474899057524752572006230843959997841521536274236615511587750039832014979332539924539915807860222967109230298738770371871063759834296194059907031260324597353713442284471130560805946122495294807423458083635025189319558646442212459161798625793784738344309603016513355951936699928410805609866016648244631951643648288242475041729105749202516848107495430809184564037582943457286768883109270231510808158554549441157152513493684930416951758705877335895250913277012541968048511163986915876606316087458297080987346429881},{"N":23068407873896187320610408658036992760323120237076281539139801143529656493030091268390954927616119732305210576479622679524747880246080257702939099128994719527894439722828526117361648236913823027514544862046712398251734066527697676237348724465158893599560473200351530224245041596340220963683429881340553208409699594299261181212989221107530971303522686320513564226387471374456547377291192484997988606654540899634665450162274963086331783789860908282085692296248300574631527561763641974772756130570734735297575564567681595756096492735284720794891113064512997620639494646662790341453069978107064092657029168133504185408209},{"N":23360724885676198523522179321150194474267520026708517257764444663025119039638464657158724624502663558960702469988070676415660798425916276572290617437202837750858738892140118363926690520956187802097449221385283612203760207950600195667994976400493623569930090999021596112553157677485561299069991215207522767873493631366488446241092099654975621689119086509041077742510323711222260189730828492291459421830791540197321337933505867430138627984859014648102694909985043765241359798051875756951108870386862501048751981261038842763679815348130953290890391440850806363449637432840586263665690832227799688631446932015796916844537},{"N":25572476038149983843824758627743773292157542015669155545898739136432359227667585235619146413408812705275735125477228881724887114180658812229689479785083051083069428146070988730518675361280497876215801249358736365876007532614766347833762716625529381645528767502376159614744663698030295284120589012492759402983796882103200388651743368106596836536656368370930363045639317610411594882976032564820311800297421945366798108347221120736308176815503106682839506833524058020959093518528060465861144447540812579976237229589574562145541453749754749768478003306870660214131556451734687719631047077200787163529663274266186702479657},{"N":22679491499676926565249058751269701914370165376325885490706178594236435587374452393672919867257890172146499232592163563478749644823548404207107209183759523050603597049541204457028947474998785130219644182203008088877544305999771879137962239304258371157231174473491797491114277983084811723764080082851754276992307408859865524067180300336894890064430698022388669278921501809909740064260359142339540812296913591956784925745003590749703099702370645409020780887758983568638652737043891478141095930983089074418014910987946825193073588506986312390146214478478314600989393866198945700334073322066709926152728868061176019551541},{"N":23556951187256713732039305973238937631620385080790804249029259279472926645248156172448686117325741554381537031072742207487366612992119859269685828207319515666102872111546619607137952974660084980511684952594879342586512197525409799350424247192892012163769784591542546626323584978204193899561072157767856334488337110957680579926475975853118319141371431419486620931003438350760541975587261961199260033262263106014958269750801811225868080849204705441859105664948039653986722714354940941410686784948916936213417318953574086609821961649007609305029496977916873440356977063491030736996785241653241262171162950673703965399497},{"N":25874692591276389940909836821933328634340387691760211719857424847912710687202655208899136151842265948895002254373718724704209721944297143062448179072459504026936041473424765480639475272190837266572978737262449980766383982513621598580661341958135147571122513631091491976191663115339463730624237942100977649124658328431032849468551008597071378488661492324861414296280692846039598797857140808360770338990664282941023358641770157837364612463858095463039043959476170224596463891235213200808423306885708639894810932553685021558027739945539621344374072593175483199343233185955959027063970833388545231587659014590298587532269},{"N":21093015027631740022404443614096248522776233243516651444497036871175728958780883068858760981924585432192986275662870128643941927265524238598903061299795143929360395711020210769824764384718922898979318706735662563638859312024117764087176816929100038836825165997745175858151391747552772916358596447916581236137266690055236206686429983418915105841208302705945838725058954761546083763560226985859597874827308926656876419352353487645531847757035757295720869824004015071252605178819856102760159009139713396577974830023684477215548955933062314225333947463154019890073099705030557644025494887348484646782031863159015194484417},{"N":25298229297396047246415163429032546137139715727559844391184017906947304850232141234045323209407471473714145852636924268416866274482603754141415609592221706725085407059971638122009913495964543366119323417218834638913881087432600102264473788528537095668778412431377856067113698729914757144153775835786313302871273438949909936263664301138604696985912220658568672102041006541952444982579070062275651333990266954050520365848194152044834016212084441028573044037025009772616765171118784908205140185837844772749992941537017860827787097838183799078426827486346760690086948873222139803967157701952297751113063507286886770253809},{"N":27142202438632787162126599492908508783692765215748557510315014134009044742375492012422395905792294364201376442258017321008269356413320158807932162865700040957744157446176162447390298999320446062496836729102114052332958615915307193716216287036998207324413342337908047902088094382893405585342830460716335897834006040665407645344104524772021574862180664953364488173834491400964015536206179143781066229852877159880337660767454184922616386524557470530917791514588890903382115919687896218697262329973216887300329083882938499296413225108475327673886217363092593458630101782913564451822536507792690041998191978031482893873661},{"N":24506900410165079432913879286738242981557799447704277709132563752281068885918764244597103897934251933625444124974453530023693766922128717584028552755128051187819589410024704161034785358235535327695240184593017832269373629062497324651346586921679971074785452914954524453931920025017233873766495332551435302696547239605953737313669053194482788679487077465271167890491044626060923037626210805459313170671202877996680415217025953459280403666974895608025476083146334864242075064839862857242870450430867849337473211116054259839281123892458791925377357496234454799948092884977174468592367921171996109259120511593665944142269},{"N":26694966767987840469949338865344547117483340362831650227215482575365406012636774021468648984974992022743149425563486792907591668251920735101399223711217247824036472514130615393737405150133409306326610912172081216216331513707092964488994949651842782342704418212963772590286378010081225253538245220740244206602153540135126863052186543426616293649543741875882042173380956119737322204906042367710990417544800462728321639324791151406955584010061660628304199783826293959912579926890912970052339895938137461119473504729752401310289221600181057106776643382986556174592325963163204522372078262520351770361427042538592078722253},{"N":28161406783438289776782541515550232234219338732182263528677255680862818571394539837092411279908340595856411618560352096707955778113841586575489526111758509944691006867155143609674220650793817498419172979829028602046249597147507621299153669762040424244341554256616377217119563525915851719009321686306763607672801085326365691030132510560260181669852932393003570340516931927914922146799899039434467722922041925474101320996856938035131446584298134298675299397155375412990353784006913691603024110559796744887732721945933471868150638226543773483734660294313186275340618342717882057017678734282256333631978096376709630195493},{"N":30290385531723706663194155723402482345164001328034021287910161482488063429892351584916277391109894294446801833020074687889362652138426091460224301803948089690115686705682426193759251182110547546779254274419781083851169949275087832187538168815749507922889270386625094587688358817642053715412200458038741309360104964334706289126542952674791148655002683650712544232003067953586569445443104249283623297733191839471659254940888571771772980381177972566220724293577306168494057111878161156955456998298372496716136324267059071403030493623531599851487444134766104137251811774500492630476212318493040236485031236879687941684761},{"N":21891762840438596060416034930044842446937758373617708235288562429502315391645647044939378215035677465574183685957522821315454029977571728750605988329881847569313802549118091978526315133726370633285214423147938264418314863217805659876561184725718735591303337902948467582966199323804114988231963307083517180657041313131586070203747291724798899561367507615511932716092324516747320587928666160741969956121773346301706809405054989477031949248189136343469258532041255092588255241987397760849320759799542054627513230744643622791455964220513319415609245199516100422991698341556744298439022451385568791478794837569530013904689},{"N":25360934335416714794999313991057897528923718232366653339706494176825638906694689891746545886915964196582662458688535283322287088397853865709093712398485753916163063777301385991907720781358632265326870516346689492128442283774600103789825609570294923480202759046857115137927714980847316960609776972337028789163184648676367675625026306027140091761009104192786329465543720196130052658782412428125321357130192023653185727111578488774341366834046035305712205910649341950409228079277410881842097288924692206421126356254520404943323384573694119449632324221088061482676921038116252201661916622983158849603411299895152156469481}],"ECDSAPub":{"Coords":[92492306118178589821640584737240636977398594678247616965910942704932180187323,27954057508764275913470910100133573369328128015811591924683199269013496685879]}} \ No newline at end of file diff --git a/test/_ecdsa_fixtures/keygen_data_3.json b/test/_ecdsa_fixtures/keygen_data_3.json new file mode 100644 index 00000000..cd8fe554 --- /dev/null +++ b/test/_ecdsa_fixtures/keygen_data_3.json @@ -0,0 +1 @@ +{"PaillierSK":{"N":27732731445242071631661957657712700411367090291795241371771965432140171981887215839890743735562516245338158767440902124645306227526755834590210240211292920385793070069156192085968959067158127765511651425539136016999745924428061397793021945121990437538890398656832618417715425504589084090095239114803460787199036351739230987513003864153861252195944069425337294669643857426654756086277471320443733998616523518289821541295617435513033264977202437153989318832642208143170451837926277566396048774049270318848738844338850668187024045715008196311523744942555689097435377598835544336914580911633671909176827168167136470690349,"LambdaN":13866365722621035815830978828856350205683545145897620685885982716070085990943607919945371867781258122669079383720451062322653113763377917295105120105646460192896535034578096042984479533579063882755825712769568008499872962214030698896510972560995218769445199328416309208857712752294542045047619557401730393599351526895838129021995828306264113931285665639810550996751849336536369220230334644988197182132217392077082888430078638910587745037069537664633968914245639632251817165736099949016578370074940133473856068360289160760758835353903162485416803625719298598240338989797716643027176992878755094238898258658201806127982,"PhiN":27732731445242071631661957657712700411367090291795241371771965432140171981887215839890743735562516245338158767440902124645306227526755834590210240211292920385793070069156192085968959067158127765511651425539136016999745924428061397793021945121990437538890398656832618417715425504589084090095239114803460787198703053791676258043991656612528227862571331279621101993503698673072738440460669289976394364264434784154165776860157277821175490074139075329267937828491279264503634331472199898033156740149880266947712136720578321521517670707806324970833607251438597196480677979595433286054353985757510188477796517316403612255964},"NTildei":24531363009049563762536664273685630249930678743601473345646756718446749360580428942513295608401046098557387011967587876621178423418085640157221932880387840241062539585907115950101921176093340357598786734576629107604766098059509560466283874031181440387973563913507733219768477775440248994272649062713092103053254889978195382189063452107439308150731662099755008823588080977928436274879799764825887538020606485093127463680041134931480024720440536560752357773730443722294290727915022250638670491342013254556128005158924861347226548459626859027825687870031912255326425000561908947972742109607669897905187712585858898757609,"H1i":21994027187251658420706956116678134303619268245311594874227984400819404446053485122189884678892175444688722527594580466254690437593853064923544979570444911946308283663229116693350631331935027065689358169246815279257122823014594309629197723508317910829246255814111959552337648906237682616732913305786178221005434606679461852547394872592127050442856550471832240167936976142756988960345619830477159914332536955389792251800932867389016006568741180137556936582683389834385412181167798283357296952856933963222988284608097870458140102834156304710781157917296313315513842893014212063887070100364867105131178923785373561146050,"H2i":22298685304249156715841839507145325522077048988910268345524279200863227356693376151033928569980263444962701165900514081299580440300365488019578288962534096517468902687907593109404000193096117803450936780948162440311950526862133749440555125530434273281017640257175046682563772712146188162909037424635371282116160809281350332585723737917537784267577381007869736550494661878733387948458251550312048040279754696568539248453484809390032249968377837207868808482658171733689439009562188880777607125039187467565549644537971596666666932158369857160883674108786200103009448463903055431989786220430290067137368612432640074310237,"Alpha":18526143758755369654106004944117140756173404582491413553141906338793937130524429529927169152026444966863960884197222097674004658763716535759273611605298510839738335359649171259646561748939901963163965571336517233109522826419453692460046507823385679524530100549577353456703682809978350127899180153885180143821809197146059616865930644937024137034322332233524948244416174785799809449392860246631338364691758740681112478508455990027323505216075815869169341414099572577475668799641080744140493732262714576392617224767131812852417840964212974189205932920542989859289007273281887501506896551155940933379052070595308620177616,"Beta":4731470290802421560212636103952042539433663549200665236082307313214601244574209799275630018152365209115556197950372624999358026995427562538488519042769102607395628687988097069439128970424052948450621007354538223241224392414975894880034831439683172722692711214925905463896801591681069567282484512214752510071804587514420309333473070421553803904079730643871540565603236719312785744337374009915441330459737757330855026189792632353457931492753910769714143223873036315514405040244554597356157884354816211986413844944488365802645987131340954377249627968022763963213210588212237590211244723310568706439857628751183618122215,"P":69803197718612198264157207254293499773421466364819033956674416388981053103828413035941080975905948484473512919447989015121472545666110666930410253727012477148248334857519354362893776057831930558490745820250709195184343181665912214670119883938386822416925928664899583761362499811671582064808163573575599312533,"Q":87859022977498083668476810321491256567921418564280059746410083524518486948291455613021059571374256246821564668912657244037103710010080289353592799140931056809183616803501060129264708679331459239770837629213603567399461719778338594208464467502528060541257502283111358345097270772235294547132430720419737581213,"Xi":10024048826107425726828580752086990883370190085488838266547983045060632911185,"ShareID":99910913777216787121500121711080713911605201308487494263101624819470958719077,"Ks":[99910913777216787121500121711080713911605201308487494263101624819470958719074,99910913777216787121500121711080713911605201308487494263101624819470958719075,99910913777216787121500121711080713911605201308487494263101624819470958719076,99910913777216787121500121711080713911605201308487494263101624819470958719077,99910913777216787121500121711080713911605201308487494263101624819470958719078,99910913777216787121500121711080713911605201308487494263101624819470958719079,99910913777216787121500121711080713911605201308487494263101624819470958719080,99910913777216787121500121711080713911605201308487494263101624819470958719081,99910913777216787121500121711080713911605201308487494263101624819470958719082,99910913777216787121500121711080713911605201308487494263101624819470958719083,99910913777216787121500121711080713911605201308487494263101624819470958719084,99910913777216787121500121711080713911605201308487494263101624819470958719085,99910913777216787121500121711080713911605201308487494263101624819470958719086,99910913777216787121500121711080713911605201308487494263101624819470958719087,99910913777216787121500121711080713911605201308487494263101624819470958719088,99910913777216787121500121711080713911605201308487494263101624819470958719089,99910913777216787121500121711080713911605201308487494263101624819470958719090,99910913777216787121500121711080713911605201308487494263101624819470958719091,99910913777216787121500121711080713911605201308487494263101624819470958719092,99910913777216787121500121711080713911605201308487494263101624819470958719093],"NTildej":[20539613942852364097890357541124859329931817468396278432713468646303963073659662742703665137736867247354367523800071318544570641421320510992705137876681425752810096966415479528824625129989063402576946505816887222102561441464103605308386975248012283762854115939987945603503283072741824666735245204091384515192454349252950007899626081034649919068642018312817079235168086885705851677572363277983076857313399016624874649811334825694862350059490166759704819411086564625186038339099281295128259092469609539775245598320922394808913338827772001777479207381548603315272620456484970681705115865233047669675602308688791376160589,19461028678249357721701139019984545699598216253588699892259672060166427273458875608319855785678884811755179389274380053495578644060470229307987007292965327985966772681212738091909180148035785695413643708212165777295662698493311553457174395686873169155288384255670661532430410131045712913078128214239252258473814281283319061613409102410606683119900924722782015902970301519339718368508022893331969649513655635811522767629123667744907556474126774472529158147258343482417188228144974952598132795041139358631852141986745214674779692377899411672630850213748161088638857089501019216868292821676374914063004957409393293909513,23815206664659393600414832732918591362081086959256855451108811883313935088830793690110550688160373127903180149093000695761674277348327575728255258492470452704258920461298225437641154249481888087192237143947805411796310656512191138629555279666557122333244803756577286887501632314162770617970064401783626962319950524158923845138939649762251756759762119774585338772559055859463599094869423262313306255644927649977403492926253217608523813644206820059309357940964633363130901166057002430269910921882664166860038861390305316020579398429144038386189480114288127704265879389663380565983482028227028306457603727009698486364281,24531363009049563762536664273685630249930678743601473345646756718446749360580428942513295608401046098557387011967587876621178423418085640157221932880387840241062539585907115950101921176093340357598786734576629107604766098059509560466283874031181440387973563913507733219768477775440248994272649062713092103053254889978195382189063452107439308150731662099755008823588080977928436274879799764825887538020606485093127463680041134931480024720440536560752357773730443722294290727915022250638670491342013254556128005158924861347226548459626859027825687870031912255326425000561908947972742109607669897905187712585858898757609,25485947141960036800495601740358196336268148055632283852581334267632567089581351729697672659186150817483946028874699734841543360085445274610946793774678284845142698994270979141586640525566502581978495871744643885460820923876472270768798335817566781711314773489485670479771252073613546268231833675772584402239718946768734191504723089294480532048176604551680713541748910822012363078082926628834536634899606309021451196325472880525430322895659546741570135136047631868000597393506058143850364801619503318165686086392731222189995494225633540472226098357551602534472541794408218767265775850366289511546336446350346021282237,28927199961592509462716713052933904239681693743133323458100757563361525410670677174848159248824087482997906403441479071298957717300803186875289912194352025314864665854179681659546207985006650252942140268140510157106320849846175665072784539119695315757729095462689260495430463870222739869312073694346079553731438032339737072477343055235278557275309616493517920166164080693605271556685355062728635594753076381152709174590915306592547837200121302421882042327338955791916538647734045471143845013412592155994390976714634271247514800401724247381959070976404354024140134277339724455784411154537706347451440209596089260579033,23535119694477523772171748044630208131923028017288499693412795663706886468394056769073862998142660508474676105711590469240299300182072142961838102383606369450702330959729879893242049940029310408964084662077585876233411878169942718467081776763994846585950049650660912827541883992039288017630464390592382481783566823924532043610685633953209522603678841504652207254189077646669746333277037092923165111872444873598439940966325805716105630151638779643981500665152639984434504817034412086671254173379166038071662889121653550757613052820175939040916661555723756176613161036717523938816196299007092417098079561970714605061629,25950783447263038071689830748627856944354421735888733670277679971199180982562433131778324823115329151828330351648021612294094370722267669972986008148650808031918722892417970047773133521052009921040352676366121022268583455702531977371124075420219730460605780729481918672698487964603151661149289116143779941433746038933525309985350586367303720987487112290090195247099032317451409521767630753382551078895196505751734814139673689437231496521554705226938471456297964527299627857211400740652357956604961830754401147898467475649318148547949522809325493238323065337997986089837089904293908389128632840557033917922339991780941,18687318215344566555182740902454336428592486945614858718824661784376438207943593936740995084200358460316665071770681463630810552799361606949595415859491617650913620153502889285378972038135570359724693463761135116433672709408902151793979112715679738392883186006369274528906256519536716049908878346476950103274343269649895419042195937774381514132210454482820166758270346958078142742840173830940449171621914508101385104081796180941351697633772994457709351610367195330318869580666697900958479010130985251846923421963647318437209519428820003347978947799013079168765159404172743072632243706939700207639779907975142224264481,23171083837957860801722218699383337900446240030786871268841926233540016534306722256418697981846104677203759841627977766724259030420015851980511088229043403050763668171722648141766116654882525867416891436685059276174192868946692072206824573955678962077288068058032958478942750338128252470165933443869447212456023356245726416751721989152798706366691818486325734110680894776063318626260722657549472271184224308146689662638536101291469177898475337027531732897213355102104990685266062044811809193138366772764276162181116512200063463469172637189164324496242489479899844513951546392297220122152709400797483802836017803985829,31343857270714098359641269819793471247744609345771779520849062499842222751853736635128030263011267623933026775894009843057499037409921342064326054830123558338476304900840753732976691522721379417037190976719048367738172877422341695489954487825668390415147795382659776979019893183466662138357984500601883268994989224933833342232607751640920642550766835871191739404896219865225614116435580799461951708239551693029017567595268404121330207564314786956323833427106966279493560190075571199071036639702485305576334075428484139050116713328535867597124971991546934922511844853709001583656359284723717084806850145785405536911177,21157487427733991932564510362138492162446873104287756897983482468142107066461483198236006898398559574298806811271053872211924774119515269456039458266616445024300383802406544466004007569246261860103312006457776588799344222340569710165666518367783547810282003032927364478322210948885423703591814633243286070072754280297773344097615910071723846039979528910869815670975142743376293197136856592859188733532786144697373533341877747464753616005694543102759948736736802569257325101204596297349394258616025918915521692968786299735438817719576226325356937526633071323693338940757362235570825853130085312301448111119042363796113,20871071186633559430638470998115518791893553646420368867902204568431630269565952322291766136370093127894084798814242475456617969102595313205728405129168253735048454253508700456761223106599134617920774227174015124829476988377890165462875183814841087993485125686632410376362585538078467534668954228084080919739417042353928509644795709201564083148094079836306167650314513450129297783489119015593642581024870311297891618816623633162063381775243950740681581620150958717466968747843706102214690157071025611480716612116918336154774385432247274600064909320680551901771492165221773721500541614228617829117370166464409020423677,27392140202372139560911530190722295626016991167776777076251374167016701252229100335980281077736021393527993281083564981442696373714433732500818431355034758384480955155409564373832745499649881975977124862697809360957420580753883129965594447943274206109113518479198329538838000642865155652137973709624008263285324174285285129803357738290385065522262059795474318914719823768887144641758090777562619592046692917101170170722723905514971631800061092086777420826999668590868568525034863406950714560799453233548147404988580929389926995856613912328981176466707497680180241272497358147647189027922268738449537259460751070153621,27430458285560064975603737623690566617914765114564307656159371148918349993794669623672608540855772729568670170546349850367039352526804750358257162362490778729908291097260480430890476823722553654389178498566668573496227008913481934125881578164602723285712928871252207939941804689355173665470036039114037118963971589320342018774107583274314158608546842149328506685304690959566263296291871998398637364399822435359987280203416832697098234360106966146607816540746285266790106830402077656904149244001383199485864465648143588026246539864484902228828598281873311925831114015086450712030764672165915248196209070047454495085169,20958576649034914977467969756965874238364659071947031154211972997487243461262394795340258789930977809611131615831278870909123144191655991893039673506539165135637011485008482874021240555941833074286915507794874804218274011487390148860550531668300157069443584231888571925159473970195937554740938933226402208131160317818926784959057391389980505131685522579677264162724011263439981256344785140426649255485125637348357522582511064347878764724812085894898146080695383734063354384186594813474135513405234523117338489484424618032520881618202129068318264606277435174234229102947510033247339629069254901430086639327996737230861,25673210614761004254141737312053451635018146154378993341101985326929566270344015265597835170941666913606119762699769929117810862190840467973932188558749547474174367822508601158829928161219529997833862214002106486508027112865708012732033692783629855485545330232068552007350877531730729790772847199443436084419382562932662568511421420283558235026303217907581598166628555941188586096538364407553738314729036218493332920854764055946289816665260688813327844579390598566768671973314358968068459214729157676432241630688442073088681756498136814491310636028421098965714509622937097403466307515165856202257786336739101389349089,27062431131775909264962122516003720577621307700606752850978674545503762322327045712593154396229756047740198870458644425173406714147601486563284216353367017457813364860861671576291918230182938220436949095109018225648486931358793025228571750572403143070647269508389021099989559676856968002395615757641794675119572488971947338527037552287756390904188517823120698354616567162661395526975254448758091053074808436661809101512025437321837959528689272191238705432334775200965152419124620293521962173467865862080429867958898040527206234108561471429991355210673373595922083144022410446012714221026174220695995286555692560595981,26101397013404440939950108603288565551073409553356897393691328641679505760230621741096317929709636865532238670826796537369580597665138924272200816037026280780915781305836081579178356868109017075793286763556497902869947712856535743263321959264839901002581734771178344662509473227839268090064000382806059250315977679226653239225555007655990623485545590336008766750972486014525144801720879444739045959169483687885427725508164188831961197284042818573448808100923870021600896976125650269597381009562192855793477760166114366163011349461311146903814241124631772470784181050979028948750586113514587005436500903242591757553293,22437602225740742482465534898349205983133213895660550238212001804732032977697798637757435728694311659299624886491819969612531644822478331097020027346346025174540910579800256280214031292073085792970245723432769912206355626120327772649905875827091190500315669126429992547075064736037570537735332469814000462556933603719315364923773085086614780916637137068518726889173784282955430621992569759561719528189938429235007732504425905045067985337249988673084527372002559031400047880307427208848753891291386460253720313523072063965808016289774609282102972264056704286287440985034888143293816594327214769326166521224390393446693],"H1j":[16370062914568124684409954423220013634799944354368183091925443712820668316759795091290952642141219645055533606292548565759917746455430426634828957426644826424037530474618159463204943752577732484149675671820306363344833458247384057865310742915406677379586789735200748327711872632191061145184949312294612467345847214916930759229195852858849386686352293049987465485866498220082468131280135383612600619493426252446949294373638968518891137429993551161437309269629260378927918725566711632082553316166822070110359114229533322390061282040482480263995079579444943917107997110057038662405191417861817663789094790962966996587522,5792666313208572350705907594949414590804636531753541567087068453778543363077542142305947911768781865374122070750607847515026168979710170113788718287465368491981654823945993941924700096393523941715256095048825025361038086570514643251828085846380954791657627403414038681940866434304045104130214177360598208974353162505514170835103706979081795485247158115653501838694614859268884296606546104394637012764653804556264770973741677326601115655746125293204398034469241183574629519235451142797709676366285591723984602961129858687877266469708766607187000988412118886394000517917001485137799190522482532376333362935442751367745,14510201356793997359892744405553071944121896518459738320470368478827891282273167297002903311912769777071155241288755372185351193850631471716718530488323104261827697027757019895835360274243188719367049075501436153398857359555924247334095665350350441220453460409146684994664351725204034521761578947269005519140498383255606322844603919000682223940913285551513356600061526959181206093504072618536296265435830192715190515397064435874311583709516596584871136822289753837472532490128304199643440789002058080030111113389709287097531544417461853059085059819958060220257218705882557929843952675556987949500595639655528439052202,21994027187251658420706956116678134303619268245311594874227984400819404446053485122189884678892175444688722527594580466254690437593853064923544979570444911946308283663229116693350631331935027065689358169246815279257122823014594309629197723508317910829246255814111959552337648906237682616732913305786178221005434606679461852547394872592127050442856550471832240167936976142756988960345619830477159914332536955389792251800932867389016006568741180137556936582683389834385412181167798283357296952856933963222988284608097870458140102834156304710781157917296313315513842893014212063887070100364867105131178923785373561146050,9913834538682656788610829579771569556624609911472542281771864528920206652057360227595914694025069327892774241543292898072673087864732558768588752951687639831868499912733997907550450742144719953844448973554109420086839278177283587750852958353526057789017170152122423018814264172807655239353760715885145548388992476483731471865364270428702324445078126354834888878640191523880163270112743069852403951565444480363239177556818094412397417215136415082364220806171351930690164376890892251369372868624028034980680685551131786332553623705883769998271596791035214982761974622986462384695349153129828098712177799482890430520965,15464554656029222110560140639422624868539470020281691165975400448606613120973644407534365935510334228227263162749065335291017684520353168923100727746351715681760916446206803485743114757577242723665933043744987644589191843035807511863595701170012104449542518101585729174897996392297770818633483533801844500665798250501473521227123975005972911918718226524366806206633841675388137041998857549215313632375036761617534744890091542919972307048750757690677067439820416806817051344016166652866968067639055986253789416713411110543055264622333767216550525033482750914452894139691102713436731472281130988207399023815239852528906,12865788614422531768878171769038267076266208200249164027644212721909963715015912538682157638127903293282023380796412378159235431043017021949518573892381565899437599164703723050587964116914107635838030249942901605297513982608974593500166572552953195544515492725593747884602852061628830280449190167844572097543184555448060083835007200101317266753106995526429573085540857281097156159258319440414895242242967023265742835942344738184941128584859242462621792495405423196954908356769683815889035326257091875874458718611430785903143039161526479973858541524126951528796262613552089943663340076548393182371918642954593889432834,22194516202811321146792934079465991238594712937226367504517257988113211333368349800836879103947252405610400726941861867633710543721876626238467090611506859331575128297406631557631820626534381998686705168632059305910804423292984195597625141279765512951234238593649775486094326905655122386938572411401132183960062730500896105597665702000968846572795357957098192758080717128908256523579293163137417423771381528097786100281383788052729825837521137512379280310081930804124457815661946839040621474089357381345723789618079958299474682840114875558952249988571746058484000722421698440994062460208554903525444210802321182968014,2022329329707369117437055740094404969047484980501833952214571687130852032499620508208708908589247080600189902502365407836277381678968110704345539053376355432754797822267575827372488857681103447936055038802753292113151984972961755143427625893918328299356797405969999266508287378495280713821635381697950988327467894890827305051792226857027384943282520470216088404776455333696749084292781033264737672933515625823807581567568754027253581653106384383593181057349330506068884659072076739226363616897242406137010778123983315619151551375977509919335513557274798510437948502408760645678633359245877721858614575061700591393721,21638702445456858422878500352234793329413106731788942261751796025224145517964611169394617788434763506002565806620170893339110273126875286455095506459298086020278318872581385674653253080383128797980439557511752718258375238388481802546638936192461482797150514683008473213407715728694302414916863995043974867827876036585791719812271742103323384468954527534596036617313432433874380308883492321501736879178345427074046787174556058119038049586737477628511165980047288251497278209275581664775606335268904384984155864116270266473616061700061527150495070719210903471680082400487754898061609554671248760480063619759950744280907,20932768206097680299943959313782719928339866139959731166252002876096405653871733170637914957728294590217455322823662941811142831487382716004980657707514358763150029924714520812685697751484102120909926147024006189544048800446501267477163792293393919588659127430522309503845365000611784195390022621092266420671288509706282186373855655358090019051530324622779193478505342408854462043136412488215465955955421082850282626458587043647758494935495915329050933653468179762936320308005669155322055934931071589853638981754901315764484414249149121368560265856082417024956730272011998498550756243974623835494966366962683389714964,1365816667585940330490355905311774458514715320376130020996515573937571923987574784307504874484515899610747050162880466334946062918938639620242137371098595406424267003818882220942016240927776918797542668204898851284066695289242978919397682088055368818116198595348273129318762376760634794532531433638073562846988038755248023571028829475051882101071203979111269507596248527906600986677728810751499828436067766182628039345309355341295172437424660504415028913205507139100147921515616240146193076677157859750716375066201587358526136840334151066553547201088947345861316322897488659331106732575557394540428972305438213375814,5703448175361065536885380258834894924349694750000788978424055908887487214267289314410654116737467233333514153490994654420800717947051017245903088635547080581089891657444714373263301759995815635072257679749046151543038146531810310826817366207696928190231298874979984114964348460891792295427444943206125809938612729939665048974349693961742238426880015130297226114935093282566300228257419316454068258492582819117310017835605391570376283517758701794125467889060184214275911038527696714000045849219024045243597506828846590195831908281658454892131533791810760325400211405258812142759529523572815227489710851557846638137542,6412242406353564485058502679404605624009190790593030266854505291800626778702270387175472290319448965303250433574173375628339895100997329474893279692868549940279796264731093585208695625011062617868491258157215447275957107991387222489580499373804335870682739788296835432969262878909434810429803264643527538555130662379672012787064972208117475596665593916782896686056579449802576468324812730306559649834202797329883549294599723290402017221639617907711497472325019619452322282704828796586508386419927496666562295856731151167316262475184222145101211618002798513055006067228431048839763646095282531119806559583105533794495,12506213831497706601305625665856619892819919408470741644330076368184175310515183251146177621238406207206410185643656979107225155831507800032694528257147716038515158570256044209419514879851010106278924359714862316802415670557334433034976750101928783991744583819411313589306343712690219032368416678985323530251239318661396466801994308940886752046080901718450406046375904389766893043894196541576969928137946704159382893563356338387889137855413730990126192021766856444171515497507122402917749807424621383187173538906785892654668489198127757882153223185090960714890345630801099413698632285321494907662894187137142803150791,4340320683992731212484211057800765907410470847269768304639037529290512671362801376775768288042129836088810539204858832843247178308000345604701431226310915807542068901686097542648829915466491213307097734259829414895234796525272600474326857346693882386640793824277606043756669695477090601330450743232413209505539149906338741119182508496705355703793044044384724643256986023764031438551900073624644692938223394706241422593949897781383635695299729171084301185179708550600098470031089086344919627503113655735768701217637285566867914251954499504690075652022468818725559007318841314414541437592229352428286215595483845053638,11992304082547451264970842283976418853821301172975086658682116387543359417074268643442593212371361490968819128789238354995117145993279593426471336648259583293294202599078859260437992548184464009386152763827946804967424362206055435693041324410893236957405711025923054702040161696386453571055246924713260145964584750230359074777621444549946362450468684233332414284037283955916761049858000878784786268023500095161975906495439332741618288811384519280375489794382891880648564800750663555801045203854227681083222146920912455217541211811955477767635787030014152643158711960638325867606918508708678622347924499914937535267162,14695333877946105505101457937623624377562698430478247685331048607650568913937201633971254630714736577175024535322415669442798271475956496536083972430246897654017678266490639701809689918981250971730052435032797344400248226649579239038593902835536123498617918666329121083751772876090103853533035181736615043011673643017303605152279678650202512062770466963460251942403425462061196179491356440328364636048438335959347603428717042954470887883300891927932651483741068303515425618933688194621659816079976510221005329843899476003615861655015952079393164902282608831513778303062716347528913475870793908798463564832083549613643,6361624891550612817090909815430156259585522002511378700573226127309539860650523892977168943678195716824260472829831132024282728135758912178943090813161584286046605117495775878170654691942858452263763077967647297167266507685944611403131069163214134338169098006751105941940463654618427873599267528041887836331948305951890335742121311832653316741398094161561749334956600724220433324620401615490879450816097431926849306846384679126203940987154375373597650036103822699248044107851648286585837187416880739896147553285981829664828869063480707437325000260106329487862878699057790666160151383639198420965781777521408308842299,14948927140088320458060089936345715166494298631495857212773926944790409869483957673185876995292328343640197788589621807184518806705821872810447516194927678801617268846361533345460325613772855110322242304569109406957894646727384216069315325052819333705539766154972989576988248927288284161530384846682668538198851543196833452065614949748530253693700328342501577900059842225778082026779632761099626760985225309957646536118173500439351182747667021029407125807666947346322131872894915154624415940708414296769044070685030466034270063053482191494419465005898644603408406165778424189251953592599788015054586521957253320449350],"H2j":[9653640790649475435050720061635061544335995170813227062007808546473167610366804040613054457009646767723479128021709179513573358845884462519136809844401815066012655857973373223748942767836422506840658738556503260986697250346171921063441485400421533124068250604530993514803166454504801884882297625678932746326066096923436475087338628767636689481829832307623108408425959669915171224014581673426602770656342925462023157550194457295116217893440581116140543598050947318929500123378985275492765280831578803707538206440354119287576298034238031692982504012470196898579719660373199491817717767711160029710911173725338539566802,3578111860663702772408903345930659472256129868015762875031051677614699117364424442270785915866444756532836287879751640816575659073006676007210405202315496945346450727441553016187592354415793891110773645408147683476571812485850037389853330648238106038729525075512542830213816094853869971661719959033499816133612736102442725651388405183329714325258711655979055386253406319598230253658818466953001815116530962213661362799968355793928849708876651937113231862631691372187008559216884922263381652908899796744393080985272287681952842592674663712445064149288160957033524932550150413325097150870149209345404214256294282382085,2562656890570835296352376205216590519360952576353253013086344012422175466058176642832419040937235521572328705583208834436813588375562745525224328564354560731400723267162764903064018742843839822445601315505274421672289602485557719646504320106522113645676636456687468751723898215955665240524139836668877382766583475339565598073690853848639545227831264115164596396262772422415214665834769274554577301336288865874066248890243346947740610544045667761548206600923673948174739356732295677551749947395385332556227074205668024351973201205328576603362256016900712683688241615565934460363012498930253514800348031700419220337084,22298685304249156715841839507145325522077048988910268345524279200863227356693376151033928569980263444962701165900514081299580440300365488019578288962534096517468902687907593109404000193096117803450936780948162440311950526862133749440555125530434273281017640257175046682563772712146188162909037424635371282116160809281350332585723737917537784267577381007869736550494661878733387948458251550312048040279754696568539248453484809390032249968377837207868808482658171733689439009562188880777607125039187467565549644537971596666666932158369857160883674108786200103009448463903055431989786220430290067137368612432640074310237,5879475324785385886080118453628099122983640585548725925692818787221734315336181255707999432375105366554548265736590343628955580077952532008988837072008731794155978542038914506112861039350525606157951017828660604272526605818549217659336563240062224484914310161520768881507503977620229908361541865095980430141394883457555144123820008061398004875781145432780438239985999952863196781468403423593755390719871396312035325131303835880979744451815683310530516197085535308856850866798018523735074120787646575912319226234213646284739550604897450763442470406797690674949855848424274918433854009972115369882751833585035329242761,18385446607341413929216752317617998458160849115285197433981133872531647462267817752048089105851349541660795002685652456000086108157981979426453705134803682299691630928200421847304354380350114763235863451959398215394354125874494984531309790405988904217354164073819568789120760731377280912128364362051769093741704293517942028826498663326655241508795914202031051398724638536523567800437872676476082333745719105291491676453403521845621182329449421075607837301738332926110019535833222421409565228043580701032497151738816862657210572819375918881851411438625526045192015060739626198734346744421593858157488507552447503219157,1543023308301318791291636723263661645234407352972693347930324541592073282303070472660827743672362126204249434834670307886593868303926045601951702434485524524299146190187978789568968092026789881246345813079894138764374868096047892517784410005345559357208978859029831295378789933334638460830863012154730679683049737545160281582305039520027158141403805442275432519516975114987511502563484403828987844187725357101956491714139410763551382100998178318863295224089354110436171289236674317711473441156004575613857935802947903186710273135122934512388821226072049093290647716152026391828419205457729234939199662889356527012444,19612969155814925927900736991694631498815639143900750081709470615537990112217002271570654324774711607889679093067885009086620212727925361021546388555967618760690930383917718167829905900473725102007606380323545403188303409627969907029774876076466652636827981089598601596821629485556381455948439528301393466043329774616323471054547330305463639720319551756652789237846520745512886328152641158526571443916940675394167134193466655448590323552123565655514390433855054114283235652222186673800138041449545987929749641868001910765212175435331820335256408276886037716378072029444719891008048297796893611911457701948988529229282,16728597479991680407332164223276251930971882378040601546182090035388885277790620642130984559023085396113670088325023048100279567479347085329073035696608554975777409036805727779421519384442869313567486101701856985975948368091166211269762554257345698853374624187196304439193724792774291722910128170261256918581442838390388813651239625403911503915460141004046718650178671549506593787333200145941149923809156438433492770338609398675185696331933468246886804722117355530728325631706711888199439210221397335620762682713255422110226515677047306270190770133307509623731091673964502293431264279055367772707113499782043802219072,6959317283624626561280838810011851848606573383456333866356771642710009365943896928686358713606049305764133589953562485262421030190625379899341516940088176438653144375343629199857524649360799157617467464667207079997090732685762910728717721600193091207478294785009859545546272657408615665578978698966309579302786158306046780048259033960048367018506262121833776982527433736628482989970739839626561164331780819203300647377931749431379962789021848504353274218995997754499900534324222498419599756583548358913120017762065234354717544865856293340540081744252368993926137398125931373959455585431506453093937785431907339954440,11707820384786665143909181917722140695066077204138675859555940823963085499198625584153264077484611920625749300043796981737297557284495008476240804003977980903028035986014301427047695461308987163082644181568819427026377861293089760745032220979974314071873695748444473344481739404234865330820136242966321355292830007655295383627072182012764804101331409332152687101319613845603099019594628684448783718018158413013589965095889558760502141979036830513073469713570347578185733951700672935586145889495063730457422516713768592535269075934288536062686021973569079600458124449475763651523966025703378628943004868525425132768470,12680113365919882057574106113475868522128522384382601197321116786250024227710942753687346378669117549887826210207932325610070970266526443555090342822407043741408930676918514338947859254583933603158241276952467805479024344654828575004834480980171788527657050724406198542408746742354531228386476751247072501617975174749412587537766151828306153888252035411082379552917399551115964687725743020641384211728557413837203373250893065347048255589312756928959773947595990023044227966600250595372063312552514516053386563033360883348059069724261103859193470298590631028566611086928803669676829225666250863192855787196720603673760,9019657743968669607069997647539968262488442864840563257526073127843215521457164945521996034009113740811008633126128201485876365964359243077677187550395794512954090076458031575481109943534530172796807658845833964496790520042423061347000207701119849250007073432625973802817311058171823571086584900654526615124913824393095137876668486739795620319593113487319306758076868523633806281732675535191877729151172494277333403640038019691517232275137009983348569240826245496914996509643617684093222096189728055561573909735610063401084000594789204303691795045753669664876756897469727730211469836756344045393712182476806348262481,509727692658127329234819348282810282823358222955712460979035976368760532139665502509369544837059902335508770138210475703837249689840377266421270410968940058538125244069674567645496962345390684467242600183265156396927471901904730403435725549974213712745153254130090979413745442250230122176329142735628394058559735078808655502950813887104168441824680204081093532561399756958380811786995754253778833219233414597390819387529718886819478101169481249247654168746478268826094117295037052091370216680279456693786586815595643437522530315484348520350527079378100131478937805285900851443697897872168020710497135465069780807687,3842294189873253197555038084451026657880884971357471477404186912118522652991181539287485996470843289095459960588932515934990566949413638625169611068786524327230092661471599333492933504858312443510340452825109814219748343465626968500133039743956522352452046474898271016421645025612565409422475581907506677274527441400119913285024497410632467771786023570373229380492185234340140113773065511943229164821322784643171443642045254567266530741214826934397811463635644370547054062567012016231228876473774669826378368361454200858389911185989849447377758286974943747417740672897265471383352127822433439855380640722238771424561,12605457156020973444763168611522695283402376793806466187139735133742095649198553225011255516233464381926302993187553632508703365300132776800901755737316341235931477791227746456204649162573568121476427289406145613748980339685673661511024577823438911510307584137593479079190723698666793670318162798116104492476114229973922338166221669934104784402698512349426984473431614385866651807327515058966935011035923319124790759086336194395000632944700277782112868323483780168144642250558671981757792078139349701070563555668082796938131863328410412160150471825619049694173807371104601644825755844313657731729068891163705563867555,18221138784555811053296911040444811422299569221370698341523745856400091281377839778678778328149110548534138934160836481393838346908432982920562116626677959686450236292050295531261923474882738697393510842972966810110218027601675376030586402861098487543863740705626110087204717386977952136809165092530095562928623301371629208844732733664526090007002304626939446606391205626126192870615394522174649688440887870385705569710809581575204639778805466412903927058799148697158251622260213645585723159916754663707237605872275846686566820885362722073881904277317597403167380835907876296870877478221646920284310430371934404822311,12694464409184116198175216134705674117698495589897734763290223249700439697747213221960704240817308024376618649511257185410755720163743943692791263666036558979570909072667619923266653682384882259644954119285287063471541002032435823410204495631358202104734018269537402171761572193134509812396214919229814690930600798504895496564687656801956575973479011431776352638782289114699743527186781919502658003154674450714069197242726393985114420810547684173494018605147976810102913734546162705259030658206284298418521349062777115509219489672039075093329236647292016824670535351144784388483525751068225542810044999850751665224074,4201765615355271720665237538919680402664127861292891404309962354268106831635826650331041297039291644925592311983403700464576600435518882156854904159089879201301912105368413055078865795374091914623189759593456721300785707753873135853357294442043908826331857106210726005526370024055346666586491341046296314798619327898858072624823009991437876242325624019938022318176060332738994176297193724805935694309014605422020909137014676945305249645201662101488974241605863532571828450201507584679493905057922784236072997143238879363168245889469038437561181276242698369654938178116001428367837409133015026021079614840533626761027,5693818583095067032554302348404689889827513405370432124730856324552577938645345928545249455102636900381970277642590696482249653647276002965730520652542065397111012479589269283364878130676178205766673654461574816233876555267291293343730094421360715866449358521574582941335437947403997555554148186986038285554629922609604751054748762347310142603219823359220130919495866316927224981350998367935679597793982889611172206443879512553133682522147111994374985808397513270886689704297115982752710085691562031953231724109895260045500479387280386873351701423764105530811712645875225583048344423503433093456461313617037044573606],"BigXj":[{"Coords":[31961961449149592290215619337342545369164998201385135329342844666166714363705,64636392625998908156106021830673034903148364934246785109426074897879798496695]},{"Coords":[13561027879868215202586968035768135752207534764402067848160241312364043370282,31683215740694624076579960720726613640416539517460242899883851320256877874663]},{"Coords":[102970472861055393328233354777448191839076263179087526130927097177204776801806,19849778771794568183958877322544789075545226949228544528619329359950140265115]},{"Coords":[8366486354279759555693815735694831293559828965602250556327317858912116678471,24456250444071880675953816335612932507033433175255559522554349078047625549678]},{"Coords":[93126246885046599201299142306317944158536766260090154798797491446571717586613,101632074177392193573512178573083324222329391048269493231849116848088552218375]},{"Coords":[45944473181199785374833853975473363930687909609574532965286298616052742734642,49106561873713078177518155217967815241790729328033604070651886838013799968339]},{"Coords":[88807289702586806295763026580879412609419986472794654189482668002118698433065,66889255218792877467551818840857264643456782872798377645941824720058728156412]},{"Coords":[45745777770010867130655637386117976632006388263133845103488205463444756286557,58413618959379828248439575493421719547880693819703454359788283537541749522854]},{"Coords":[14931705718614911512649079486924798218629483414127465950786381421646404878840,70853895869521315016717813866703398949051565204254795550601147911581008651495]},{"Coords":[31702825468512650039750289022997764002837389172468049717092331147393818254752,90704921170203464181329063311130512192295590723462840980995045506481351030148]},{"Coords":[108133277897421036808605843118854356978565880360693563552498521263092161957794,33994893650793696043114830343063091347849012751372498052809673503667071259863]},{"Coords":[13603746174106309213882605187834221055267478293724779491981408043396477605150,47502402322605913877968636451206238145707201411072573659819652572960084227380]},{"Coords":[21962637032374642863765173367353663611071785709723940819398260699915154728736,65876190623954751874122457014542214494068664571689464338691288646258987627994]},{"Coords":[8139291295258406047002639746372064115101651961499427493344848502049438028449,13643120656693319356484507306610353728697986968072320539867387334577150577786]},{"Coords":[871083651129542234211830236854985246175496411885064575219875767816674532739,100904963893789549224657775356884044157291453214379932308347421012612568685620]},{"Coords":[98028745019433069815621229762947408124245116227553507407780733119772046992520,60367568163137055112812282822118701471566204774343904929920219271364583776122]},{"Coords":[37332951852807254347441974643993866127041633128152922228434313154811023954744,56046459898819968566785812285970001512876757161864884424831574905585289505077]},{"Coords":[11223798616675111197150792218010453124916879614948521844981845491687409376646,70914747125199464172751182264377339815163078089055967502760766110580370145293]},{"Coords":[62949410140974969962342726366577125978516456835571210444108422984760191628326,55668150354406094271153240357261264601037343235231498038021007487545647055721]},{"Coords":[7611358883569187056502001665501128526153865541559158134839099203014115911991,87617845479447207941483995353359860120852817257735643485765526341493112597509]}],"PaillierPKs":[{"N":25922769748919102678415192880711636156565612427571550685296776086119205445525743826557545692077634738129321690187868055737306626420419536394422682260657759329710259802294458956279773225258250955469954464209933873407784778802101265717840506851919529598154066919091078766953942869622551929743069097967501533345363150709912011028449270819442207860620552088412428865900112120786495620291333470644949767300948329241775121748888220588626655915013364614554467190860190736954650967874940702908395331234632114014125372505065096924932509595285205788545338407476139436404463823043865599023326570565049384032977060875483209339089},{"N":23930233287283899271771864413305422456138957780711273892670074191715648409585503033095084345383391541524625291548041741990557564183855401706042293717552023237439032182637019639795919249455653535670614575331737610284863144094845900714497635996654401300216924764570210541950557336240993007183309433063094227377624710274228010652758134777897718742178998545079447283838099902510469006366469099975469096355736757507201973304413688395278990349533350163833514531655073848517781662614171483003731680841330633223244205178982328422170273570503713081265847261211618499950287557687314846590616484106774575999250148317390509484773},{"N":23804125140052077689856128298352557083678652474445385365228110453726681237860799979845611556170894187976654278582576364089033396218674226546868809651353049956675922595541689542576794678062495339422204984765419389268325283682512000995221750412104207394441438666051694475950049774094896290106430636216894744335784327798634247450687264677393229214665686649911456587168142148024558282134024448427550922487022680890892554782651383972136386958126051377715096556862662265886688077689941967157694195467190297477735450118736949849327358586935699405848605265912107169200547464609552395233560924746135866463084686118233592906569},{"N":27732731445242071631661957657712700411367090291795241371771965432140171981887215839890743735562516245338158767440902124645306227526755834590210240211292920385793070069156192085968959067158127765511651425539136016999745924428061397793021945121990437538890398656832618417715425504589084090095239114803460787199036351739230987513003864153861252195944069425337294669643857426654756086277471320443733998616523518289821541295617435513033264977202437153989318832642208143170451837926277566396048774049270318848738844338850668187024045715008196311523744942555689097435377598835544336914580911633671909176827168167136470690349},{"N":24540078122494262833119917930091872139739129939617606686122284549157786865278292966087938309454800165081094474899057524752572006230843959997841521536274236615511587750039832014979332539924539915807860222967109230298738770371871063759834296194059907031260324597353713442284471130560805946122495294807423458083635025189319558646442212459161798625793784738344309603016513355951936699928410805609866016648244631951643648288242475041729105749202516848107495430809184564037582943457286768883109270231510808158554549441157152513493684930416951758705877335895250913277012541968048511163986915876606316087458297080987346429881},{"N":23068407873896187320610408658036992760323120237076281539139801143529656493030091268390954927616119732305210576479622679524747880246080257702939099128994719527894439722828526117361648236913823027514544862046712398251734066527697676237348724465158893599560473200351530224245041596340220963683429881340553208409699594299261181212989221107530971303522686320513564226387471374456547377291192484997988606654540899634665450162274963086331783789860908282085692296248300574631527561763641974772756130570734735297575564567681595756096492735284720794891113064512997620639494646662790341453069978107064092657029168133504185408209},{"N":23360724885676198523522179321150194474267520026708517257764444663025119039638464657158724624502663558960702469988070676415660798425916276572290617437202837750858738892140118363926690520956187802097449221385283612203760207950600195667994976400493623569930090999021596112553157677485561299069991215207522767873493631366488446241092099654975621689119086509041077742510323711222260189730828492291459421830791540197321337933505867430138627984859014648102694909985043765241359798051875756951108870386862501048751981261038842763679815348130953290890391440850806363449637432840586263665690832227799688631446932015796916844537},{"N":25572476038149983843824758627743773292157542015669155545898739136432359227667585235619146413408812705275735125477228881724887114180658812229689479785083051083069428146070988730518675361280497876215801249358736365876007532614766347833762716625529381645528767502376159614744663698030295284120589012492759402983796882103200388651743368106596836536656368370930363045639317610411594882976032564820311800297421945366798108347221120736308176815503106682839506833524058020959093518528060465861144447540812579976237229589574562145541453749754749768478003306870660214131556451734687719631047077200787163529663274266186702479657},{"N":22679491499676926565249058751269701914370165376325885490706178594236435587374452393672919867257890172146499232592163563478749644823548404207107209183759523050603597049541204457028947474998785130219644182203008088877544305999771879137962239304258371157231174473491797491114277983084811723764080082851754276992307408859865524067180300336894890064430698022388669278921501809909740064260359142339540812296913591956784925745003590749703099702370645409020780887758983568638652737043891478141095930983089074418014910987946825193073588506986312390146214478478314600989393866198945700334073322066709926152728868061176019551541},{"N":23556951187256713732039305973238937631620385080790804249029259279472926645248156172448686117325741554381537031072742207487366612992119859269685828207319515666102872111546619607137952974660084980511684952594879342586512197525409799350424247192892012163769784591542546626323584978204193899561072157767856334488337110957680579926475975853118319141371431419486620931003438350760541975587261961199260033262263106014958269750801811225868080849204705441859105664948039653986722714354940941410686784948916936213417318953574086609821961649007609305029496977916873440356977063491030736996785241653241262171162950673703965399497},{"N":25874692591276389940909836821933328634340387691760211719857424847912710687202655208899136151842265948895002254373718724704209721944297143062448179072459504026936041473424765480639475272190837266572978737262449980766383982513621598580661341958135147571122513631091491976191663115339463730624237942100977649124658328431032849468551008597071378488661492324861414296280692846039598797857140808360770338990664282941023358641770157837364612463858095463039043959476170224596463891235213200808423306885708639894810932553685021558027739945539621344374072593175483199343233185955959027063970833388545231587659014590298587532269},{"N":21093015027631740022404443614096248522776233243516651444497036871175728958780883068858760981924585432192986275662870128643941927265524238598903061299795143929360395711020210769824764384718922898979318706735662563638859312024117764087176816929100038836825165997745175858151391747552772916358596447916581236137266690055236206686429983418915105841208302705945838725058954761546083763560226985859597874827308926656876419352353487645531847757035757295720869824004015071252605178819856102760159009139713396577974830023684477215548955933062314225333947463154019890073099705030557644025494887348484646782031863159015194484417},{"N":25298229297396047246415163429032546137139715727559844391184017906947304850232141234045323209407471473714145852636924268416866274482603754141415609592221706725085407059971638122009913495964543366119323417218834638913881087432600102264473788528537095668778412431377856067113698729914757144153775835786313302871273438949909936263664301138604696985912220658568672102041006541952444982579070062275651333990266954050520365848194152044834016212084441028573044037025009772616765171118784908205140185837844772749992941537017860827787097838183799078426827486346760690086948873222139803967157701952297751113063507286886770253809},{"N":27142202438632787162126599492908508783692765215748557510315014134009044742375492012422395905792294364201376442258017321008269356413320158807932162865700040957744157446176162447390298999320446062496836729102114052332958615915307193716216287036998207324413342337908047902088094382893405585342830460716335897834006040665407645344104524772021574862180664953364488173834491400964015536206179143781066229852877159880337660767454184922616386524557470530917791514588890903382115919687896218697262329973216887300329083882938499296413225108475327673886217363092593458630101782913564451822536507792690041998191978031482893873661},{"N":24506900410165079432913879286738242981557799447704277709132563752281068885918764244597103897934251933625444124974453530023693766922128717584028552755128051187819589410024704161034785358235535327695240184593017832269373629062497324651346586921679971074785452914954524453931920025017233873766495332551435302696547239605953737313669053194482788679487077465271167890491044626060923037626210805459313170671202877996680415217025953459280403666974895608025476083146334864242075064839862857242870450430867849337473211116054259839281123892458791925377357496234454799948092884977174468592367921171996109259120511593665944142269},{"N":26694966767987840469949338865344547117483340362831650227215482575365406012636774021468648984974992022743149425563486792907591668251920735101399223711217247824036472514130615393737405150133409306326610912172081216216331513707092964488994949651842782342704418212963772590286378010081225253538245220740244206602153540135126863052186543426616293649543741875882042173380956119737322204906042367710990417544800462728321639324791151406955584010061660628304199783826293959912579926890912970052339895938137461119473504729752401310289221600181057106776643382986556174592325963163204522372078262520351770361427042538592078722253},{"N":28161406783438289776782541515550232234219338732182263528677255680862818571394539837092411279908340595856411618560352096707955778113841586575489526111758509944691006867155143609674220650793817498419172979829028602046249597147507621299153669762040424244341554256616377217119563525915851719009321686306763607672801085326365691030132510560260181669852932393003570340516931927914922146799899039434467722922041925474101320996856938035131446584298134298675299397155375412990353784006913691603024110559796744887732721945933471868150638226543773483734660294313186275340618342717882057017678734282256333631978096376709630195493},{"N":30290385531723706663194155723402482345164001328034021287910161482488063429892351584916277391109894294446801833020074687889362652138426091460224301803948089690115686705682426193759251182110547546779254274419781083851169949275087832187538168815749507922889270386625094587688358817642053715412200458038741309360104964334706289126542952674791148655002683650712544232003067953586569445443104249283623297733191839471659254940888571771772980381177972566220724293577306168494057111878161156955456998298372496716136324267059071403030493623531599851487444134766104137251811774500492630476212318493040236485031236879687941684761},{"N":21891762840438596060416034930044842446937758373617708235288562429502315391645647044939378215035677465574183685957522821315454029977571728750605988329881847569313802549118091978526315133726370633285214423147938264418314863217805659876561184725718735591303337902948467582966199323804114988231963307083517180657041313131586070203747291724798899561367507615511932716092324516747320587928666160741969956121773346301706809405054989477031949248189136343469258532041255092588255241987397760849320759799542054627513230744643622791455964220513319415609245199516100422991698341556744298439022451385568791478794837569530013904689},{"N":25360934335416714794999313991057897528923718232366653339706494176825638906694689891746545886915964196582662458688535283322287088397853865709093712398485753916163063777301385991907720781358632265326870516346689492128442283774600103789825609570294923480202759046857115137927714980847316960609776972337028789163184648676367675625026306027140091761009104192786329465543720196130052658782412428125321357130192023653185727111578488774341366834046035305712205910649341950409228079277410881842097288924692206421126356254520404943323384573694119449632324221088061482676921038116252201661916622983158849603411299895152156469481}],"ECDSAPub":{"Coords":[92492306118178589821640584737240636977398594678247616965910942704932180187323,27954057508764275913470910100133573369328128015811591924683199269013496685879]}} \ No newline at end of file diff --git a/test/_ecdsa_fixtures/keygen_data_4.json b/test/_ecdsa_fixtures/keygen_data_4.json new file mode 100644 index 00000000..7623f2d7 --- /dev/null +++ b/test/_ecdsa_fixtures/keygen_data_4.json @@ -0,0 +1 @@ +{"PaillierSK":{"N":24540078122494262833119917930091872139739129939617606686122284549157786865278292966087938309454800165081094474899057524752572006230843959997841521536274236615511587750039832014979332539924539915807860222967109230298738770371871063759834296194059907031260324597353713442284471130560805946122495294807423458083635025189319558646442212459161798625793784738344309603016513355951936699928410805609866016648244631951643648288242475041729105749202516848107495430809184564037582943457286768883109270231510808158554549441157152513493684930416951758705877335895250913277012541968048511163986915876606316087458297080987346429881,"LambdaN":12270039061247131416559958965045936069869564969808803343061142274578893432639146483043969154727400082540547237449528762376286003115421979998920760768137118307755793875019916007489666269962269957903930111483554615149369385185935531879917148097029953515630162298676856721142235565280402973061247647403711729041660487333510920011122937138574954295806136375271986473451560751967173002498099332960160067642190786329302505034220530875414114500474464171877940919124625268867456393511212477810352115245672146396225371617642682949920776731955871257621476098833431787059363859298141429611805737309058585348332633893848627404146,"PhiN":24540078122494262833119917930091872139739129939617606686122284549157786865278292966087938309454800165081094474899057524752572006230843959997841521536274236615511587750039832014979332539924539915807860222967109230298738770371871063759834296194059907031260324597353713442284471130560805946122495294807423458083320974667021840022245874277149908591612272750543972946903121503934346004996198665920320135284381572658605010068441061750828229000948928343755881838249250537734912787022424955620704230491344292792450743235285365899841553463911742515242952197666863574118727718596282859223611474618117170696665267787697254808292},"NTildei":25485947141960036800495601740358196336268148055632283852581334267632567089581351729697672659186150817483946028874699734841543360085445274610946793774678284845142698994270979141586640525566502581978495871744643885460820923876472270768798335817566781711314773489485670479771252073613546268231833675772584402239718946768734191504723089294480532048176604551680713541748910822012363078082926628834536634899606309021451196325472880525430322895659546741570135136047631868000597393506058143850364801619503318165686086392731222189995494225633540472226098357551602534472541794408218767265775850366289511546336446350346021282237,"H1i":9913834538682656788610829579771569556624609911472542281771864528920206652057360227595914694025069327892774241543292898072673087864732558768588752951687639831868499912733997907550450742144719953844448973554109420086839278177283587750852958353526057789017170152122423018814264172807655239353760715885145548388992476483731471865364270428702324445078126354834888878640191523880163270112743069852403951565444480363239177556818094412397417215136415082364220806171351930690164376890892251369372868624028034980680685551131786332553623705883769998271596791035214982761974622986462384695349153129828098712177799482890430520965,"H2i":5879475324785385886080118453628099122983640585548725925692818787221734315336181255707999432375105366554548265736590343628955580077952532008988837072008731794155978542038914506112861039350525606157951017828660604272526605818549217659336563240062224484914310161520768881507503977620229908361541865095980430141394883457555144123820008061398004875781145432780438239985999952863196781468403423593755390719871396312035325131303835880979744451815683310530516197085535308856850866798018523735074120787646575912319226234213646284739550604897450763442470406797690674949855848424274918433854009972115369882751833585035329242761,"Alpha":15553917961117102863676622551531289560084855047762272692775058375794858968435477244856972351727662993252233062887528702551625303595398297915454269909060216596711434630410422703967984787734216929321981570200061039937219279219996085921172218075303113989100809835448861759784494103341646597219980059277088391535338059233422474404758159670761258918472688870006689407334381420384686973366192496011702197932868892149768986292338141008346690447928487891667816269500457764222628941582894506747852728349890861925472678740764191912186515923847698106645094987931545558782795260631685707402904859949599042490295689971318053317524,"Beta":5300215401554114126340713245275511359803164738740883876962092164270783541870618854228616375513259971026220524758932637224535502726935203219593011063182934603663701536326003525641975622857624282645053399202732486652945295240746713707370134418750723684787473736704601627019331638153983397659862743745648199641046822283412470659884198102682459256467817751927203251042156003005266586077814974215056393213523271943996096523916603095060555782674372732166050709693780281920209441673083190499518917688048052108246904932524198763890040317740003492219035177668512651427529359848132736026690115507904938694301964837222102369669,"P":73926498690420544290875271400974501376764572835851916821314578294294117604000701207663263162107805421202145827238195413581847153072916010510148836497401433703056221673812106903182907893192399819036893037671576982478969807531180479833969262517208480805782533985411491434275158605087736249755012432398736902011,"Q":86186778737779334729328800923059591415471914838683569103398456405672125576738213950455470818136676348403842917237681735366578304411836934388255254290574135205246114731740521708583708001774452381738499221355721660610396997890135162543659592435359058426149085265061322506154734127269406330027862640769141752309,"Xi":111068086741162624685360206449663768121170745601702933105998113749732981474103,"ShareID":99910913777216787121500121711080713911605201308487494263101624819470958719078,"Ks":[99910913777216787121500121711080713911605201308487494263101624819470958719074,99910913777216787121500121711080713911605201308487494263101624819470958719075,99910913777216787121500121711080713911605201308487494263101624819470958719076,99910913777216787121500121711080713911605201308487494263101624819470958719077,99910913777216787121500121711080713911605201308487494263101624819470958719078,99910913777216787121500121711080713911605201308487494263101624819470958719079,99910913777216787121500121711080713911605201308487494263101624819470958719080,99910913777216787121500121711080713911605201308487494263101624819470958719081,99910913777216787121500121711080713911605201308487494263101624819470958719082,99910913777216787121500121711080713911605201308487494263101624819470958719083,99910913777216787121500121711080713911605201308487494263101624819470958719084,99910913777216787121500121711080713911605201308487494263101624819470958719085,99910913777216787121500121711080713911605201308487494263101624819470958719086,99910913777216787121500121711080713911605201308487494263101624819470958719087,99910913777216787121500121711080713911605201308487494263101624819470958719088,99910913777216787121500121711080713911605201308487494263101624819470958719089,99910913777216787121500121711080713911605201308487494263101624819470958719090,99910913777216787121500121711080713911605201308487494263101624819470958719091,99910913777216787121500121711080713911605201308487494263101624819470958719092,99910913777216787121500121711080713911605201308487494263101624819470958719093],"NTildej":[20539613942852364097890357541124859329931817468396278432713468646303963073659662742703665137736867247354367523800071318544570641421320510992705137876681425752810096966415479528824625129989063402576946505816887222102561441464103605308386975248012283762854115939987945603503283072741824666735245204091384515192454349252950007899626081034649919068642018312817079235168086885705851677572363277983076857313399016624874649811334825694862350059490166759704819411086564625186038339099281295128259092469609539775245598320922394808913338827772001777479207381548603315272620456484970681705115865233047669675602308688791376160589,19461028678249357721701139019984545699598216253588699892259672060166427273458875608319855785678884811755179389274380053495578644060470229307987007292965327985966772681212738091909180148035785695413643708212165777295662698493311553457174395686873169155288384255670661532430410131045712913078128214239252258473814281283319061613409102410606683119900924722782015902970301519339718368508022893331969649513655635811522767629123667744907556474126774472529158147258343482417188228144974952598132795041139358631852141986745214674779692377899411672630850213748161088638857089501019216868292821676374914063004957409393293909513,23815206664659393600414832732918591362081086959256855451108811883313935088830793690110550688160373127903180149093000695761674277348327575728255258492470452704258920461298225437641154249481888087192237143947805411796310656512191138629555279666557122333244803756577286887501632314162770617970064401783626962319950524158923845138939649762251756759762119774585338772559055859463599094869423262313306255644927649977403492926253217608523813644206820059309357940964633363130901166057002430269910921882664166860038861390305316020579398429144038386189480114288127704265879389663380565983482028227028306457603727009698486364281,24531363009049563762536664273685630249930678743601473345646756718446749360580428942513295608401046098557387011967587876621178423418085640157221932880387840241062539585907115950101921176093340357598786734576629107604766098059509560466283874031181440387973563913507733219768477775440248994272649062713092103053254889978195382189063452107439308150731662099755008823588080977928436274879799764825887538020606485093127463680041134931480024720440536560752357773730443722294290727915022250638670491342013254556128005158924861347226548459626859027825687870031912255326425000561908947972742109607669897905187712585858898757609,25485947141960036800495601740358196336268148055632283852581334267632567089581351729697672659186150817483946028874699734841543360085445274610946793774678284845142698994270979141586640525566502581978495871744643885460820923876472270768798335817566781711314773489485670479771252073613546268231833675772584402239718946768734191504723089294480532048176604551680713541748910822012363078082926628834536634899606309021451196325472880525430322895659546741570135136047631868000597393506058143850364801619503318165686086392731222189995494225633540472226098357551602534472541794408218767265775850366289511546336446350346021282237,28927199961592509462716713052933904239681693743133323458100757563361525410670677174848159248824087482997906403441479071298957717300803186875289912194352025314864665854179681659546207985006650252942140268140510157106320849846175665072784539119695315757729095462689260495430463870222739869312073694346079553731438032339737072477343055235278557275309616493517920166164080693605271556685355062728635594753076381152709174590915306592547837200121302421882042327338955791916538647734045471143845013412592155994390976714634271247514800401724247381959070976404354024140134277339724455784411154537706347451440209596089260579033,23535119694477523772171748044630208131923028017288499693412795663706886468394056769073862998142660508474676105711590469240299300182072142961838102383606369450702330959729879893242049940029310408964084662077585876233411878169942718467081776763994846585950049650660912827541883992039288017630464390592382481783566823924532043610685633953209522603678841504652207254189077646669746333277037092923165111872444873598439940966325805716105630151638779643981500665152639984434504817034412086671254173379166038071662889121653550757613052820175939040916661555723756176613161036717523938816196299007092417098079561970714605061629,25950783447263038071689830748627856944354421735888733670277679971199180982562433131778324823115329151828330351648021612294094370722267669972986008148650808031918722892417970047773133521052009921040352676366121022268583455702531977371124075420219730460605780729481918672698487964603151661149289116143779941433746038933525309985350586367303720987487112290090195247099032317451409521767630753382551078895196505751734814139673689437231496521554705226938471456297964527299627857211400740652357956604961830754401147898467475649318148547949522809325493238323065337997986089837089904293908389128632840557033917922339991780941,18687318215344566555182740902454336428592486945614858718824661784376438207943593936740995084200358460316665071770681463630810552799361606949595415859491617650913620153502889285378972038135570359724693463761135116433672709408902151793979112715679738392883186006369274528906256519536716049908878346476950103274343269649895419042195937774381514132210454482820166758270346958078142742840173830940449171621914508101385104081796180941351697633772994457709351610367195330318869580666697900958479010130985251846923421963647318437209519428820003347978947799013079168765159404172743072632243706939700207639779907975142224264481,23171083837957860801722218699383337900446240030786871268841926233540016534306722256418697981846104677203759841627977766724259030420015851980511088229043403050763668171722648141766116654882525867416891436685059276174192868946692072206824573955678962077288068058032958478942750338128252470165933443869447212456023356245726416751721989152798706366691818486325734110680894776063318626260722657549472271184224308146689662638536101291469177898475337027531732897213355102104990685266062044811809193138366772764276162181116512200063463469172637189164324496242489479899844513951546392297220122152709400797483802836017803985829,31343857270714098359641269819793471247744609345771779520849062499842222751853736635128030263011267623933026775894009843057499037409921342064326054830123558338476304900840753732976691522721379417037190976719048367738172877422341695489954487825668390415147795382659776979019893183466662138357984500601883268994989224933833342232607751640920642550766835871191739404896219865225614116435580799461951708239551693029017567595268404121330207564314786956323833427106966279493560190075571199071036639702485305576334075428484139050116713328535867597124971991546934922511844853709001583656359284723717084806850145785405536911177,21157487427733991932564510362138492162446873104287756897983482468142107066461483198236006898398559574298806811271053872211924774119515269456039458266616445024300383802406544466004007569246261860103312006457776588799344222340569710165666518367783547810282003032927364478322210948885423703591814633243286070072754280297773344097615910071723846039979528910869815670975142743376293197136856592859188733532786144697373533341877747464753616005694543102759948736736802569257325101204596297349394258616025918915521692968786299735438817719576226325356937526633071323693338940757362235570825853130085312301448111119042363796113,20871071186633559430638470998115518791893553646420368867902204568431630269565952322291766136370093127894084798814242475456617969102595313205728405129168253735048454253508700456761223106599134617920774227174015124829476988377890165462875183814841087993485125686632410376362585538078467534668954228084080919739417042353928509644795709201564083148094079836306167650314513450129297783489119015593642581024870311297891618816623633162063381775243950740681581620150958717466968747843706102214690157071025611480716612116918336154774385432247274600064909320680551901771492165221773721500541614228617829117370166464409020423677,27392140202372139560911530190722295626016991167776777076251374167016701252229100335980281077736021393527993281083564981442696373714433732500818431355034758384480955155409564373832745499649881975977124862697809360957420580753883129965594447943274206109113518479198329538838000642865155652137973709624008263285324174285285129803357738290385065522262059795474318914719823768887144641758090777562619592046692917101170170722723905514971631800061092086777420826999668590868568525034863406950714560799453233548147404988580929389926995856613912328981176466707497680180241272497358147647189027922268738449537259460751070153621,27430458285560064975603737623690566617914765114564307656159371148918349993794669623672608540855772729568670170546349850367039352526804750358257162362490778729908291097260480430890476823722553654389178498566668573496227008913481934125881578164602723285712928871252207939941804689355173665470036039114037118963971589320342018774107583274314158608546842149328506685304690959566263296291871998398637364399822435359987280203416832697098234360106966146607816540746285266790106830402077656904149244001383199485864465648143588026246539864484902228828598281873311925831114015086450712030764672165915248196209070047454495085169,20958576649034914977467969756965874238364659071947031154211972997487243461262394795340258789930977809611131615831278870909123144191655991893039673506539165135637011485008482874021240555941833074286915507794874804218274011487390148860550531668300157069443584231888571925159473970195937554740938933226402208131160317818926784959057391389980505131685522579677264162724011263439981256344785140426649255485125637348357522582511064347878764724812085894898146080695383734063354384186594813474135513405234523117338489484424618032520881618202129068318264606277435174234229102947510033247339629069254901430086639327996737230861,25673210614761004254141737312053451635018146154378993341101985326929566270344015265597835170941666913606119762699769929117810862190840467973932188558749547474174367822508601158829928161219529997833862214002106486508027112865708012732033692783629855485545330232068552007350877531730729790772847199443436084419382562932662568511421420283558235026303217907581598166628555941188586096538364407553738314729036218493332920854764055946289816665260688813327844579390598566768671973314358968068459214729157676432241630688442073088681756498136814491310636028421098965714509622937097403466307515165856202257786336739101389349089,27062431131775909264962122516003720577621307700606752850978674545503762322327045712593154396229756047740198870458644425173406714147601486563284216353367017457813364860861671576291918230182938220436949095109018225648486931358793025228571750572403143070647269508389021099989559676856968002395615757641794675119572488971947338527037552287756390904188517823120698354616567162661395526975254448758091053074808436661809101512025437321837959528689272191238705432334775200965152419124620293521962173467865862080429867958898040527206234108561471429991355210673373595922083144022410446012714221026174220695995286555692560595981,26101397013404440939950108603288565551073409553356897393691328641679505760230621741096317929709636865532238670826796537369580597665138924272200816037026280780915781305836081579178356868109017075793286763556497902869947712856535743263321959264839901002581734771178344662509473227839268090064000382806059250315977679226653239225555007655990623485545590336008766750972486014525144801720879444739045959169483687885427725508164188831961197284042818573448808100923870021600896976125650269597381009562192855793477760166114366163011349461311146903814241124631772470784181050979028948750586113514587005436500903242591757553293,22437602225740742482465534898349205983133213895660550238212001804732032977697798637757435728694311659299624886491819969612531644822478331097020027346346025174540910579800256280214031292073085792970245723432769912206355626120327772649905875827091190500315669126429992547075064736037570537735332469814000462556933603719315364923773085086614780916637137068518726889173784282955430621992569759561719528189938429235007732504425905045067985337249988673084527372002559031400047880307427208848753891291386460253720313523072063965808016289774609282102972264056704286287440985034888143293816594327214769326166521224390393446693],"H1j":[16370062914568124684409954423220013634799944354368183091925443712820668316759795091290952642141219645055533606292548565759917746455430426634828957426644826424037530474618159463204943752577732484149675671820306363344833458247384057865310742915406677379586789735200748327711872632191061145184949312294612467345847214916930759229195852858849386686352293049987465485866498220082468131280135383612600619493426252446949294373638968518891137429993551161437309269629260378927918725566711632082553316166822070110359114229533322390061282040482480263995079579444943917107997110057038662405191417861817663789094790962966996587522,5792666313208572350705907594949414590804636531753541567087068453778543363077542142305947911768781865374122070750607847515026168979710170113788718287465368491981654823945993941924700096393523941715256095048825025361038086570514643251828085846380954791657627403414038681940866434304045104130214177360598208974353162505514170835103706979081795485247158115653501838694614859268884296606546104394637012764653804556264770973741677326601115655746125293204398034469241183574629519235451142797709676366285591723984602961129858687877266469708766607187000988412118886394000517917001485137799190522482532376333362935442751367745,14510201356793997359892744405553071944121896518459738320470368478827891282273167297002903311912769777071155241288755372185351193850631471716718530488323104261827697027757019895835360274243188719367049075501436153398857359555924247334095665350350441220453460409146684994664351725204034521761578947269005519140498383255606322844603919000682223940913285551513356600061526959181206093504072618536296265435830192715190515397064435874311583709516596584871136822289753837472532490128304199643440789002058080030111113389709287097531544417461853059085059819958060220257218705882557929843952675556987949500595639655528439052202,21994027187251658420706956116678134303619268245311594874227984400819404446053485122189884678892175444688722527594580466254690437593853064923544979570444911946308283663229116693350631331935027065689358169246815279257122823014594309629197723508317910829246255814111959552337648906237682616732913305786178221005434606679461852547394872592127050442856550471832240167936976142756988960345619830477159914332536955389792251800932867389016006568741180137556936582683389834385412181167798283357296952856933963222988284608097870458140102834156304710781157917296313315513842893014212063887070100364867105131178923785373561146050,9913834538682656788610829579771569556624609911472542281771864528920206652057360227595914694025069327892774241543292898072673087864732558768588752951687639831868499912733997907550450742144719953844448973554109420086839278177283587750852958353526057789017170152122423018814264172807655239353760715885145548388992476483731471865364270428702324445078126354834888878640191523880163270112743069852403951565444480363239177556818094412397417215136415082364220806171351930690164376890892251369372868624028034980680685551131786332553623705883769998271596791035214982761974622986462384695349153129828098712177799482890430520965,15464554656029222110560140639422624868539470020281691165975400448606613120973644407534365935510334228227263162749065335291017684520353168923100727746351715681760916446206803485743114757577242723665933043744987644589191843035807511863595701170012104449542518101585729174897996392297770818633483533801844500665798250501473521227123975005972911918718226524366806206633841675388137041998857549215313632375036761617534744890091542919972307048750757690677067439820416806817051344016166652866968067639055986253789416713411110543055264622333767216550525033482750914452894139691102713436731472281130988207399023815239852528906,12865788614422531768878171769038267076266208200249164027644212721909963715015912538682157638127903293282023380796412378159235431043017021949518573892381565899437599164703723050587964116914107635838030249942901605297513982608974593500166572552953195544515492725593747884602852061628830280449190167844572097543184555448060083835007200101317266753106995526429573085540857281097156159258319440414895242242967023265742835942344738184941128584859242462621792495405423196954908356769683815889035326257091875874458718611430785903143039161526479973858541524126951528796262613552089943663340076548393182371918642954593889432834,22194516202811321146792934079465991238594712937226367504517257988113211333368349800836879103947252405610400726941861867633710543721876626238467090611506859331575128297406631557631820626534381998686705168632059305910804423292984195597625141279765512951234238593649775486094326905655122386938572411401132183960062730500896105597665702000968846572795357957098192758080717128908256523579293163137417423771381528097786100281383788052729825837521137512379280310081930804124457815661946839040621474089357381345723789618079958299474682840114875558952249988571746058484000722421698440994062460208554903525444210802321182968014,2022329329707369117437055740094404969047484980501833952214571687130852032499620508208708908589247080600189902502365407836277381678968110704345539053376355432754797822267575827372488857681103447936055038802753292113151984972961755143427625893918328299356797405969999266508287378495280713821635381697950988327467894890827305051792226857027384943282520470216088404776455333696749084292781033264737672933515625823807581567568754027253581653106384383593181057349330506068884659072076739226363616897242406137010778123983315619151551375977509919335513557274798510437948502408760645678633359245877721858614575061700591393721,21638702445456858422878500352234793329413106731788942261751796025224145517964611169394617788434763506002565806620170893339110273126875286455095506459298086020278318872581385674653253080383128797980439557511752718258375238388481802546638936192461482797150514683008473213407715728694302414916863995043974867827876036585791719812271742103323384468954527534596036617313432433874380308883492321501736879178345427074046787174556058119038049586737477628511165980047288251497278209275581664775606335268904384984155864116270266473616061700061527150495070719210903471680082400487754898061609554671248760480063619759950744280907,20932768206097680299943959313782719928339866139959731166252002876096405653871733170637914957728294590217455322823662941811142831487382716004980657707514358763150029924714520812685697751484102120909926147024006189544048800446501267477163792293393919588659127430522309503845365000611784195390022621092266420671288509706282186373855655358090019051530324622779193478505342408854462043136412488215465955955421082850282626458587043647758494935495915329050933653468179762936320308005669155322055934931071589853638981754901315764484414249149121368560265856082417024956730272011998498550756243974623835494966366962683389714964,1365816667585940330490355905311774458514715320376130020996515573937571923987574784307504874484515899610747050162880466334946062918938639620242137371098595406424267003818882220942016240927776918797542668204898851284066695289242978919397682088055368818116198595348273129318762376760634794532531433638073562846988038755248023571028829475051882101071203979111269507596248527906600986677728810751499828436067766182628039345309355341295172437424660504415028913205507139100147921515616240146193076677157859750716375066201587358526136840334151066553547201088947345861316322897488659331106732575557394540428972305438213375814,5703448175361065536885380258834894924349694750000788978424055908887487214267289314410654116737467233333514153490994654420800717947051017245903088635547080581089891657444714373263301759995815635072257679749046151543038146531810310826817366207696928190231298874979984114964348460891792295427444943206125809938612729939665048974349693961742238426880015130297226114935093282566300228257419316454068258492582819117310017835605391570376283517758701794125467889060184214275911038527696714000045849219024045243597506828846590195831908281658454892131533791810760325400211405258812142759529523572815227489710851557846638137542,6412242406353564485058502679404605624009190790593030266854505291800626778702270387175472290319448965303250433574173375628339895100997329474893279692868549940279796264731093585208695625011062617868491258157215447275957107991387222489580499373804335870682739788296835432969262878909434810429803264643527538555130662379672012787064972208117475596665593916782896686056579449802576468324812730306559649834202797329883549294599723290402017221639617907711497472325019619452322282704828796586508386419927496666562295856731151167316262475184222145101211618002798513055006067228431048839763646095282531119806559583105533794495,12506213831497706601305625665856619892819919408470741644330076368184175310515183251146177621238406207206410185643656979107225155831507800032694528257147716038515158570256044209419514879851010106278924359714862316802415670557334433034976750101928783991744583819411313589306343712690219032368416678985323530251239318661396466801994308940886752046080901718450406046375904389766893043894196541576969928137946704159382893563356338387889137855413730990126192021766856444171515497507122402917749807424621383187173538906785892654668489198127757882153223185090960714890345630801099413698632285321494907662894187137142803150791,4340320683992731212484211057800765907410470847269768304639037529290512671362801376775768288042129836088810539204858832843247178308000345604701431226310915807542068901686097542648829915466491213307097734259829414895234796525272600474326857346693882386640793824277606043756669695477090601330450743232413209505539149906338741119182508496705355703793044044384724643256986023764031438551900073624644692938223394706241422593949897781383635695299729171084301185179708550600098470031089086344919627503113655735768701217637285566867914251954499504690075652022468818725559007318841314414541437592229352428286215595483845053638,11992304082547451264970842283976418853821301172975086658682116387543359417074268643442593212371361490968819128789238354995117145993279593426471336648259583293294202599078859260437992548184464009386152763827946804967424362206055435693041324410893236957405711025923054702040161696386453571055246924713260145964584750230359074777621444549946362450468684233332414284037283955916761049858000878784786268023500095161975906495439332741618288811384519280375489794382891880648564800750663555801045203854227681083222146920912455217541211811955477767635787030014152643158711960638325867606918508708678622347924499914937535267162,14695333877946105505101457937623624377562698430478247685331048607650568913937201633971254630714736577175024535322415669442798271475956496536083972430246897654017678266490639701809689918981250971730052435032797344400248226649579239038593902835536123498617918666329121083751772876090103853533035181736615043011673643017303605152279678650202512062770466963460251942403425462061196179491356440328364636048438335959347603428717042954470887883300891927932651483741068303515425618933688194621659816079976510221005329843899476003615861655015952079393164902282608831513778303062716347528913475870793908798463564832083549613643,6361624891550612817090909815430156259585522002511378700573226127309539860650523892977168943678195716824260472829831132024282728135758912178943090813161584286046605117495775878170654691942858452263763077967647297167266507685944611403131069163214134338169098006751105941940463654618427873599267528041887836331948305951890335742121311832653316741398094161561749334956600724220433324620401615490879450816097431926849306846384679126203940987154375373597650036103822699248044107851648286585837187416880739896147553285981829664828869063480707437325000260106329487862878699057790666160151383639198420965781777521408308842299,14948927140088320458060089936345715166494298631495857212773926944790409869483957673185876995292328343640197788589621807184518806705821872810447516194927678801617268846361533345460325613772855110322242304569109406957894646727384216069315325052819333705539766154972989576988248927288284161530384846682668538198851543196833452065614949748530253693700328342501577900059842225778082026779632761099626760985225309957646536118173500439351182747667021029407125807666947346322131872894915154624415940708414296769044070685030466034270063053482191494419465005898644603408406165778424189251953592599788015054586521957253320449350],"H2j":[9653640790649475435050720061635061544335995170813227062007808546473167610366804040613054457009646767723479128021709179513573358845884462519136809844401815066012655857973373223748942767836422506840658738556503260986697250346171921063441485400421533124068250604530993514803166454504801884882297625678932746326066096923436475087338628767636689481829832307623108408425959669915171224014581673426602770656342925462023157550194457295116217893440581116140543598050947318929500123378985275492765280831578803707538206440354119287576298034238031692982504012470196898579719660373199491817717767711160029710911173725338539566802,3578111860663702772408903345930659472256129868015762875031051677614699117364424442270785915866444756532836287879751640816575659073006676007210405202315496945346450727441553016187592354415793891110773645408147683476571812485850037389853330648238106038729525075512542830213816094853869971661719959033499816133612736102442725651388405183329714325258711655979055386253406319598230253658818466953001815116530962213661362799968355793928849708876651937113231862631691372187008559216884922263381652908899796744393080985272287681952842592674663712445064149288160957033524932550150413325097150870149209345404214256294282382085,2562656890570835296352376205216590519360952576353253013086344012422175466058176642832419040937235521572328705583208834436813588375562745525224328564354560731400723267162764903064018742843839822445601315505274421672289602485557719646504320106522113645676636456687468751723898215955665240524139836668877382766583475339565598073690853848639545227831264115164596396262772422415214665834769274554577301336288865874066248890243346947740610544045667761548206600923673948174739356732295677551749947395385332556227074205668024351973201205328576603362256016900712683688241615565934460363012498930253514800348031700419220337084,22298685304249156715841839507145325522077048988910268345524279200863227356693376151033928569980263444962701165900514081299580440300365488019578288962534096517468902687907593109404000193096117803450936780948162440311950526862133749440555125530434273281017640257175046682563772712146188162909037424635371282116160809281350332585723737917537784267577381007869736550494661878733387948458251550312048040279754696568539248453484809390032249968377837207868808482658171733689439009562188880777607125039187467565549644537971596666666932158369857160883674108786200103009448463903055431989786220430290067137368612432640074310237,5879475324785385886080118453628099122983640585548725925692818787221734315336181255707999432375105366554548265736590343628955580077952532008988837072008731794155978542038914506112861039350525606157951017828660604272526605818549217659336563240062224484914310161520768881507503977620229908361541865095980430141394883457555144123820008061398004875781145432780438239985999952863196781468403423593755390719871396312035325131303835880979744451815683310530516197085535308856850866798018523735074120787646575912319226234213646284739550604897450763442470406797690674949855848424274918433854009972115369882751833585035329242761,18385446607341413929216752317617998458160849115285197433981133872531647462267817752048089105851349541660795002685652456000086108157981979426453705134803682299691630928200421847304354380350114763235863451959398215394354125874494984531309790405988904217354164073819568789120760731377280912128364362051769093741704293517942028826498663326655241508795914202031051398724638536523567800437872676476082333745719105291491676453403521845621182329449421075607837301738332926110019535833222421409565228043580701032497151738816862657210572819375918881851411438625526045192015060739626198734346744421593858157488507552447503219157,1543023308301318791291636723263661645234407352972693347930324541592073282303070472660827743672362126204249434834670307886593868303926045601951702434485524524299146190187978789568968092026789881246345813079894138764374868096047892517784410005345559357208978859029831295378789933334638460830863012154730679683049737545160281582305039520027158141403805442275432519516975114987511502563484403828987844187725357101956491714139410763551382100998178318863295224089354110436171289236674317711473441156004575613857935802947903186710273135122934512388821226072049093290647716152026391828419205457729234939199662889356527012444,19612969155814925927900736991694631498815639143900750081709470615537990112217002271570654324774711607889679093067885009086620212727925361021546388555967618760690930383917718167829905900473725102007606380323545403188303409627969907029774876076466652636827981089598601596821629485556381455948439528301393466043329774616323471054547330305463639720319551756652789237846520745512886328152641158526571443916940675394167134193466655448590323552123565655514390433855054114283235652222186673800138041449545987929749641868001910765212175435331820335256408276886037716378072029444719891008048297796893611911457701948988529229282,16728597479991680407332164223276251930971882378040601546182090035388885277790620642130984559023085396113670088325023048100279567479347085329073035696608554975777409036805727779421519384442869313567486101701856985975948368091166211269762554257345698853374624187196304439193724792774291722910128170261256918581442838390388813651239625403911503915460141004046718650178671549506593787333200145941149923809156438433492770338609398675185696331933468246886804722117355530728325631706711888199439210221397335620762682713255422110226515677047306270190770133307509623731091673964502293431264279055367772707113499782043802219072,6959317283624626561280838810011851848606573383456333866356771642710009365943896928686358713606049305764133589953562485262421030190625379899341516940088176438653144375343629199857524649360799157617467464667207079997090732685762910728717721600193091207478294785009859545546272657408615665578978698966309579302786158306046780048259033960048367018506262121833776982527433736628482989970739839626561164331780819203300647377931749431379962789021848504353274218995997754499900534324222498419599756583548358913120017762065234354717544865856293340540081744252368993926137398125931373959455585431506453093937785431907339954440,11707820384786665143909181917722140695066077204138675859555940823963085499198625584153264077484611920625749300043796981737297557284495008476240804003977980903028035986014301427047695461308987163082644181568819427026377861293089760745032220979974314071873695748444473344481739404234865330820136242966321355292830007655295383627072182012764804101331409332152687101319613845603099019594628684448783718018158413013589965095889558760502141979036830513073469713570347578185733951700672935586145889495063730457422516713768592535269075934288536062686021973569079600458124449475763651523966025703378628943004868525425132768470,12680113365919882057574106113475868522128522384382601197321116786250024227710942753687346378669117549887826210207932325610070970266526443555090342822407043741408930676918514338947859254583933603158241276952467805479024344654828575004834480980171788527657050724406198542408746742354531228386476751247072501617975174749412587537766151828306153888252035411082379552917399551115964687725743020641384211728557413837203373250893065347048255589312756928959773947595990023044227966600250595372063312552514516053386563033360883348059069724261103859193470298590631028566611086928803669676829225666250863192855787196720603673760,9019657743968669607069997647539968262488442864840563257526073127843215521457164945521996034009113740811008633126128201485876365964359243077677187550395794512954090076458031575481109943534530172796807658845833964496790520042423061347000207701119849250007073432625973802817311058171823571086584900654526615124913824393095137876668486739795620319593113487319306758076868523633806281732675535191877729151172494277333403640038019691517232275137009983348569240826245496914996509643617684093222096189728055561573909735610063401084000594789204303691795045753669664876756897469727730211469836756344045393712182476806348262481,509727692658127329234819348282810282823358222955712460979035976368760532139665502509369544837059902335508770138210475703837249689840377266421270410968940058538125244069674567645496962345390684467242600183265156396927471901904730403435725549974213712745153254130090979413745442250230122176329142735628394058559735078808655502950813887104168441824680204081093532561399756958380811786995754253778833219233414597390819387529718886819478101169481249247654168746478268826094117295037052091370216680279456693786586815595643437522530315484348520350527079378100131478937805285900851443697897872168020710497135465069780807687,3842294189873253197555038084451026657880884971357471477404186912118522652991181539287485996470843289095459960588932515934990566949413638625169611068786524327230092661471599333492933504858312443510340452825109814219748343465626968500133039743956522352452046474898271016421645025612565409422475581907506677274527441400119913285024497410632467771786023570373229380492185234340140113773065511943229164821322784643171443642045254567266530741214826934397811463635644370547054062567012016231228876473774669826378368361454200858389911185989849447377758286974943747417740672897265471383352127822433439855380640722238771424561,12605457156020973444763168611522695283402376793806466187139735133742095649198553225011255516233464381926302993187553632508703365300132776800901755737316341235931477791227746456204649162573568121476427289406145613748980339685673661511024577823438911510307584137593479079190723698666793670318162798116104492476114229973922338166221669934104784402698512349426984473431614385866651807327515058966935011035923319124790759086336194395000632944700277782112868323483780168144642250558671981757792078139349701070563555668082796938131863328410412160150471825619049694173807371104601644825755844313657731729068891163705563867555,18221138784555811053296911040444811422299569221370698341523745856400091281377839778678778328149110548534138934160836481393838346908432982920562116626677959686450236292050295531261923474882738697393510842972966810110218027601675376030586402861098487543863740705626110087204717386977952136809165092530095562928623301371629208844732733664526090007002304626939446606391205626126192870615394522174649688440887870385705569710809581575204639778805466412903927058799148697158251622260213645585723159916754663707237605872275846686566820885362722073881904277317597403167380835907876296870877478221646920284310430371934404822311,12694464409184116198175216134705674117698495589897734763290223249700439697747213221960704240817308024376618649511257185410755720163743943692791263666036558979570909072667619923266653682384882259644954119285287063471541002032435823410204495631358202104734018269537402171761572193134509812396214919229814690930600798504895496564687656801956575973479011431776352638782289114699743527186781919502658003154674450714069197242726393985114420810547684173494018605147976810102913734546162705259030658206284298418521349062777115509219489672039075093329236647292016824670535351144784388483525751068225542810044999850751665224074,4201765615355271720665237538919680402664127861292891404309962354268106831635826650331041297039291644925592311983403700464576600435518882156854904159089879201301912105368413055078865795374091914623189759593456721300785707753873135853357294442043908826331857106210726005526370024055346666586491341046296314798619327898858072624823009991437876242325624019938022318176060332738994176297193724805935694309014605422020909137014676945305249645201662101488974241605863532571828450201507584679493905057922784236072997143238879363168245889469038437561181276242698369654938178116001428367837409133015026021079614840533626761027,5693818583095067032554302348404689889827513405370432124730856324552577938645345928545249455102636900381970277642590696482249653647276002965730520652542065397111012479589269283364878130676178205766673654461574816233876555267291293343730094421360715866449358521574582941335437947403997555554148186986038285554629922609604751054748762347310142603219823359220130919495866316927224981350998367935679597793982889611172206443879512553133682522147111994374985808397513270886689704297115982752710085691562031953231724109895260045500479387280386873351701423764105530811712645875225583048344423503433093456461313617037044573606],"BigXj":[{"Coords":[31961961449149592290215619337342545369164998201385135329342844666166714363705,64636392625998908156106021830673034903148364934246785109426074897879798496695]},{"Coords":[13561027879868215202586968035768135752207534764402067848160241312364043370282,31683215740694624076579960720726613640416539517460242899883851320256877874663]},{"Coords":[102970472861055393328233354777448191839076263179087526130927097177204776801806,19849778771794568183958877322544789075545226949228544528619329359950140265115]},{"Coords":[8366486354279759555693815735694831293559828965602250556327317858912116678471,24456250444071880675953816335612932507033433175255559522554349078047625549678]},{"Coords":[93126246885046599201299142306317944158536766260090154798797491446571717586613,101632074177392193573512178573083324222329391048269493231849116848088552218375]},{"Coords":[45944473181199785374833853975473363930687909609574532965286298616052742734642,49106561873713078177518155217967815241790729328033604070651886838013799968339]},{"Coords":[88807289702586806295763026580879412609419986472794654189482668002118698433065,66889255218792877467551818840857264643456782872798377645941824720058728156412]},{"Coords":[45745777770010867130655637386117976632006388263133845103488205463444756286557,58413618959379828248439575493421719547880693819703454359788283537541749522854]},{"Coords":[14931705718614911512649079486924798218629483414127465950786381421646404878840,70853895869521315016717813866703398949051565204254795550601147911581008651495]},{"Coords":[31702825468512650039750289022997764002837389172468049717092331147393818254752,90704921170203464181329063311130512192295590723462840980995045506481351030148]},{"Coords":[108133277897421036808605843118854356978565880360693563552498521263092161957794,33994893650793696043114830343063091347849012751372498052809673503667071259863]},{"Coords":[13603746174106309213882605187834221055267478293724779491981408043396477605150,47502402322605913877968636451206238145707201411072573659819652572960084227380]},{"Coords":[21962637032374642863765173367353663611071785709723940819398260699915154728736,65876190623954751874122457014542214494068664571689464338691288646258987627994]},{"Coords":[8139291295258406047002639746372064115101651961499427493344848502049438028449,13643120656693319356484507306610353728697986968072320539867387334577150577786]},{"Coords":[871083651129542234211830236854985246175496411885064575219875767816674532739,100904963893789549224657775356884044157291453214379932308347421012612568685620]},{"Coords":[98028745019433069815621229762947408124245116227553507407780733119772046992520,60367568163137055112812282822118701471566204774343904929920219271364583776122]},{"Coords":[37332951852807254347441974643993866127041633128152922228434313154811023954744,56046459898819968566785812285970001512876757161864884424831574905585289505077]},{"Coords":[11223798616675111197150792218010453124916879614948521844981845491687409376646,70914747125199464172751182264377339815163078089055967502760766110580370145293]},{"Coords":[62949410140974969962342726366577125978516456835571210444108422984760191628326,55668150354406094271153240357261264601037343235231498038021007487545647055721]},{"Coords":[7611358883569187056502001665501128526153865541559158134839099203014115911991,87617845479447207941483995353359860120852817257735643485765526341493112597509]}],"PaillierPKs":[{"N":25922769748919102678415192880711636156565612427571550685296776086119205445525743826557545692077634738129321690187868055737306626420419536394422682260657759329710259802294458956279773225258250955469954464209933873407784778802101265717840506851919529598154066919091078766953942869622551929743069097967501533345363150709912011028449270819442207860620552088412428865900112120786495620291333470644949767300948329241775121748888220588626655915013364614554467190860190736954650967874940702908395331234632114014125372505065096924932509595285205788545338407476139436404463823043865599023326570565049384032977060875483209339089},{"N":23930233287283899271771864413305422456138957780711273892670074191715648409585503033095084345383391541524625291548041741990557564183855401706042293717552023237439032182637019639795919249455653535670614575331737610284863144094845900714497635996654401300216924764570210541950557336240993007183309433063094227377624710274228010652758134777897718742178998545079447283838099902510469006366469099975469096355736757507201973304413688395278990349533350163833514531655073848517781662614171483003731680841330633223244205178982328422170273570503713081265847261211618499950287557687314846590616484106774575999250148317390509484773},{"N":23804125140052077689856128298352557083678652474445385365228110453726681237860799979845611556170894187976654278582576364089033396218674226546868809651353049956675922595541689542576794678062495339422204984765419389268325283682512000995221750412104207394441438666051694475950049774094896290106430636216894744335784327798634247450687264677393229214665686649911456587168142148024558282134024448427550922487022680890892554782651383972136386958126051377715096556862662265886688077689941967157694195467190297477735450118736949849327358586935699405848605265912107169200547464609552395233560924746135866463084686118233592906569},{"N":27732731445242071631661957657712700411367090291795241371771965432140171981887215839890743735562516245338158767440902124645306227526755834590210240211292920385793070069156192085968959067158127765511651425539136016999745924428061397793021945121990437538890398656832618417715425504589084090095239114803460787199036351739230987513003864153861252195944069425337294669643857426654756086277471320443733998616523518289821541295617435513033264977202437153989318832642208143170451837926277566396048774049270318848738844338850668187024045715008196311523744942555689097435377598835544336914580911633671909176827168167136470690349},{"N":24540078122494262833119917930091872139739129939617606686122284549157786865278292966087938309454800165081094474899057524752572006230843959997841521536274236615511587750039832014979332539924539915807860222967109230298738770371871063759834296194059907031260324597353713442284471130560805946122495294807423458083635025189319558646442212459161798625793784738344309603016513355951936699928410805609866016648244631951643648288242475041729105749202516848107495430809184564037582943457286768883109270231510808158554549441157152513493684930416951758705877335895250913277012541968048511163986915876606316087458297080987346429881},{"N":23068407873896187320610408658036992760323120237076281539139801143529656493030091268390954927616119732305210576479622679524747880246080257702939099128994719527894439722828526117361648236913823027514544862046712398251734066527697676237348724465158893599560473200351530224245041596340220963683429881340553208409699594299261181212989221107530971303522686320513564226387471374456547377291192484997988606654540899634665450162274963086331783789860908282085692296248300574631527561763641974772756130570734735297575564567681595756096492735284720794891113064512997620639494646662790341453069978107064092657029168133504185408209},{"N":23360724885676198523522179321150194474267520026708517257764444663025119039638464657158724624502663558960702469988070676415660798425916276572290617437202837750858738892140118363926690520956187802097449221385283612203760207950600195667994976400493623569930090999021596112553157677485561299069991215207522767873493631366488446241092099654975621689119086509041077742510323711222260189730828492291459421830791540197321337933505867430138627984859014648102694909985043765241359798051875756951108870386862501048751981261038842763679815348130953290890391440850806363449637432840586263665690832227799688631446932015796916844537},{"N":25572476038149983843824758627743773292157542015669155545898739136432359227667585235619146413408812705275735125477228881724887114180658812229689479785083051083069428146070988730518675361280497876215801249358736365876007532614766347833762716625529381645528767502376159614744663698030295284120589012492759402983796882103200388651743368106596836536656368370930363045639317610411594882976032564820311800297421945366798108347221120736308176815503106682839506833524058020959093518528060465861144447540812579976237229589574562145541453749754749768478003306870660214131556451734687719631047077200787163529663274266186702479657},{"N":22679491499676926565249058751269701914370165376325885490706178594236435587374452393672919867257890172146499232592163563478749644823548404207107209183759523050603597049541204457028947474998785130219644182203008088877544305999771879137962239304258371157231174473491797491114277983084811723764080082851754276992307408859865524067180300336894890064430698022388669278921501809909740064260359142339540812296913591956784925745003590749703099702370645409020780887758983568638652737043891478141095930983089074418014910987946825193073588506986312390146214478478314600989393866198945700334073322066709926152728868061176019551541},{"N":23556951187256713732039305973238937631620385080790804249029259279472926645248156172448686117325741554381537031072742207487366612992119859269685828207319515666102872111546619607137952974660084980511684952594879342586512197525409799350424247192892012163769784591542546626323584978204193899561072157767856334488337110957680579926475975853118319141371431419486620931003438350760541975587261961199260033262263106014958269750801811225868080849204705441859105664948039653986722714354940941410686784948916936213417318953574086609821961649007609305029496977916873440356977063491030736996785241653241262171162950673703965399497},{"N":25874692591276389940909836821933328634340387691760211719857424847912710687202655208899136151842265948895002254373718724704209721944297143062448179072459504026936041473424765480639475272190837266572978737262449980766383982513621598580661341958135147571122513631091491976191663115339463730624237942100977649124658328431032849468551008597071378488661492324861414296280692846039598797857140808360770338990664282941023358641770157837364612463858095463039043959476170224596463891235213200808423306885708639894810932553685021558027739945539621344374072593175483199343233185955959027063970833388545231587659014590298587532269},{"N":21093015027631740022404443614096248522776233243516651444497036871175728958780883068858760981924585432192986275662870128643941927265524238598903061299795143929360395711020210769824764384718922898979318706735662563638859312024117764087176816929100038836825165997745175858151391747552772916358596447916581236137266690055236206686429983418915105841208302705945838725058954761546083763560226985859597874827308926656876419352353487645531847757035757295720869824004015071252605178819856102760159009139713396577974830023684477215548955933062314225333947463154019890073099705030557644025494887348484646782031863159015194484417},{"N":25298229297396047246415163429032546137139715727559844391184017906947304850232141234045323209407471473714145852636924268416866274482603754141415609592221706725085407059971638122009913495964543366119323417218834638913881087432600102264473788528537095668778412431377856067113698729914757144153775835786313302871273438949909936263664301138604696985912220658568672102041006541952444982579070062275651333990266954050520365848194152044834016212084441028573044037025009772616765171118784908205140185837844772749992941537017860827787097838183799078426827486346760690086948873222139803967157701952297751113063507286886770253809},{"N":27142202438632787162126599492908508783692765215748557510315014134009044742375492012422395905792294364201376442258017321008269356413320158807932162865700040957744157446176162447390298999320446062496836729102114052332958615915307193716216287036998207324413342337908047902088094382893405585342830460716335897834006040665407645344104524772021574862180664953364488173834491400964015536206179143781066229852877159880337660767454184922616386524557470530917791514588890903382115919687896218697262329973216887300329083882938499296413225108475327673886217363092593458630101782913564451822536507792690041998191978031482893873661},{"N":24506900410165079432913879286738242981557799447704277709132563752281068885918764244597103897934251933625444124974453530023693766922128717584028552755128051187819589410024704161034785358235535327695240184593017832269373629062497324651346586921679971074785452914954524453931920025017233873766495332551435302696547239605953737313669053194482788679487077465271167890491044626060923037626210805459313170671202877996680415217025953459280403666974895608025476083146334864242075064839862857242870450430867849337473211116054259839281123892458791925377357496234454799948092884977174468592367921171996109259120511593665944142269},{"N":26694966767987840469949338865344547117483340362831650227215482575365406012636774021468648984974992022743149425563486792907591668251920735101399223711217247824036472514130615393737405150133409306326610912172081216216331513707092964488994949651842782342704418212963772590286378010081225253538245220740244206602153540135126863052186543426616293649543741875882042173380956119737322204906042367710990417544800462728321639324791151406955584010061660628304199783826293959912579926890912970052339895938137461119473504729752401310289221600181057106776643382986556174592325963163204522372078262520351770361427042538592078722253},{"N":28161406783438289776782541515550232234219338732182263528677255680862818571394539837092411279908340595856411618560352096707955778113841586575489526111758509944691006867155143609674220650793817498419172979829028602046249597147507621299153669762040424244341554256616377217119563525915851719009321686306763607672801085326365691030132510560260181669852932393003570340516931927914922146799899039434467722922041925474101320996856938035131446584298134298675299397155375412990353784006913691603024110559796744887732721945933471868150638226543773483734660294313186275340618342717882057017678734282256333631978096376709630195493},{"N":30290385531723706663194155723402482345164001328034021287910161482488063429892351584916277391109894294446801833020074687889362652138426091460224301803948089690115686705682426193759251182110547546779254274419781083851169949275087832187538168815749507922889270386625094587688358817642053715412200458038741309360104964334706289126542952674791148655002683650712544232003067953586569445443104249283623297733191839471659254940888571771772980381177972566220724293577306168494057111878161156955456998298372496716136324267059071403030493623531599851487444134766104137251811774500492630476212318493040236485031236879687941684761},{"N":21891762840438596060416034930044842446937758373617708235288562429502315391645647044939378215035677465574183685957522821315454029977571728750605988329881847569313802549118091978526315133726370633285214423147938264418314863217805659876561184725718735591303337902948467582966199323804114988231963307083517180657041313131586070203747291724798899561367507615511932716092324516747320587928666160741969956121773346301706809405054989477031949248189136343469258532041255092588255241987397760849320759799542054627513230744643622791455964220513319415609245199516100422991698341556744298439022451385568791478794837569530013904689},{"N":25360934335416714794999313991057897528923718232366653339706494176825638906694689891746545886915964196582662458688535283322287088397853865709093712398485753916163063777301385991907720781358632265326870516346689492128442283774600103789825609570294923480202759046857115137927714980847316960609776972337028789163184648676367675625026306027140091761009104192786329465543720196130052658782412428125321357130192023653185727111578488774341366834046035305712205910649341950409228079277410881842097288924692206421126356254520404943323384573694119449632324221088061482676921038116252201661916622983158849603411299895152156469481}],"ECDSAPub":{"Coords":[92492306118178589821640584737240636977398594678247616965910942704932180187323,27954057508764275913470910100133573369328128015811591924683199269013496685879]}} \ No newline at end of file diff --git a/test/_ecdsa_fixtures/keygen_data_5.json b/test/_ecdsa_fixtures/keygen_data_5.json new file mode 100644 index 00000000..f3ecdc4f --- /dev/null +++ b/test/_ecdsa_fixtures/keygen_data_5.json @@ -0,0 +1 @@ +{"PaillierSK":{"N":23068407873896187320610408658036992760323120237076281539139801143529656493030091268390954927616119732305210576479622679524747880246080257702939099128994719527894439722828526117361648236913823027514544862046712398251734066527697676237348724465158893599560473200351530224245041596340220963683429881340553208409699594299261181212989221107530971303522686320513564226387471374456547377291192484997988606654540899634665450162274963086331783789860908282085692296248300574631527561763641974772756130570734735297575564567681595756096492735284720794891113064512997620639494646662790341453069978107064092657029168133504185408209,"LambdaN":11534203936948093660305204329018496380161560118538140769569900571764828246515045634195477463808059866152605288239811339762373940123040128851469549564497359763947219861414263058680824118456911513757272431023356199125867033263848838118674362232579446799780236600175765112122520798170110481841714940670276604204697151869382735570552820579835395283964102199032476503538765073172015650060629749226002955153120263250843933907764124879552530874840806371473709116497502303777591340217043096272459474944971840602950076359133854200513187196627663793233167258557701869825818767213561097870555894995154444443750540962718804648658,"PhiN":23068407873896187320610408658036992760323120237076281539139801143529656493030091268390954927616119732305210576479622679524747880246080257702939099128994719527894439722828526117361648236913823027514544862046712398251734066527697676237348724465158893599560473200351530224245041596340220963683429881340553208409394303738765471141105641159670790567928204398064953007077530146344031300121259498452005910306240526501687867815528249759105061749681612742947418232995004607555182680434086192544918949889943681205900152718267708401026374393255327586466334517115403739651637534427122195741111789990308888887501081925437609297316},"NTildei":28927199961592509462716713052933904239681693743133323458100757563361525410670677174848159248824087482997906403441479071298957717300803186875289912194352025314864665854179681659546207985006650252942140268140510157106320849846175665072784539119695315757729095462689260495430463870222739869312073694346079553731438032339737072477343055235278557275309616493517920166164080693605271556685355062728635594753076381152709174590915306592547837200121302421882042327338955791916538647734045471143845013412592155994390976714634271247514800401724247381959070976404354024140134277339724455784411154537706347451440209596089260579033,"H1i":15464554656029222110560140639422624868539470020281691165975400448606613120973644407534365935510334228227263162749065335291017684520353168923100727746351715681760916446206803485743114757577242723665933043744987644589191843035807511863595701170012104449542518101585729174897996392297770818633483533801844500665798250501473521227123975005972911918718226524366806206633841675388137041998857549215313632375036761617534744890091542919972307048750757690677067439820416806817051344016166652866968067639055986253789416713411110543055264622333767216550525033482750914452894139691102713436731472281130988207399023815239852528906,"H2i":18385446607341413929216752317617998458160849115285197433981133872531647462267817752048089105851349541660795002685652456000086108157981979426453705134803682299691630928200421847304354380350114763235863451959398215394354125874494984531309790405988904217354164073819568789120760731377280912128364362051769093741704293517942028826498663326655241508795914202031051398724638536523567800437872676476082333745719105291491676453403521845621182329449421075607837301738332926110019535833222421409565228043580701032497151738816862657210572819375918881851411438625526045192015060739626198734346744421593858157488507552447503219157,"Alpha":25321451791082117370957642753428856679273874534391129334456552657790295241220745840844990937621926874374144142399115218701302877482344401197350151339193346802206012492734158852969546457794797815690901365737231691320716749796151363753204970683351425087113164759724166095438777488668770250410465329038843160638758751846043614971775437777068585779120226210564509530015508789096887302190791107994499351486000271426865537623359808912420068591261832767559990362012725669800619015068064232762908635067579903001785352859085438200459881379147015423245296739225790159862254500604675356985341607527988333646735369486778480858294,"Beta":1642279507758358695089756481689280580915033367783537896906092609807945832852189624568989080919415996296657949168369180170283170245713779437220742571258640858305258924679229197112236815087650130340758166251099280241141778755935610934735728543356902025357596436753245435712172104262255198347484438409785742744065160142806354086508758060542086736287956492314964404783960906562040039932769473768538792465878047761264243285788679405803521366137550309658962175150851787881798787404552541627187632851886050035718923798071947975663226157686199422073880068626836847425339284771390650031255115869768185498406964663286594453409,"P":80696636441110830688876604524502555339853149384871961757691474198762516488968559695300470111304915486607883882287644840179160328307474799700466382661197581343723044679184082580216854795238647915485871868952000276665798387321618278023898796399414000331917384866705080129861769976043917976091785630715867856763,"Q":89617118003122781963037583900598375324740864877539287365699704690540831880022519250798601638503816117401159854902729086535851853617756616603418711642684447394635907764133031184583735921967540926415486614318384825918631335057800382805526328354726200892860000097786702550711083538276656746009204636307268407639,"Xi":108556728850186019944014252751384901580084993386694428765647602630064702483126,"ShareID":99910913777216787121500121711080713911605201308487494263101624819470958719079,"Ks":[99910913777216787121500121711080713911605201308487494263101624819470958719074,99910913777216787121500121711080713911605201308487494263101624819470958719075,99910913777216787121500121711080713911605201308487494263101624819470958719076,99910913777216787121500121711080713911605201308487494263101624819470958719077,99910913777216787121500121711080713911605201308487494263101624819470958719078,99910913777216787121500121711080713911605201308487494263101624819470958719079,99910913777216787121500121711080713911605201308487494263101624819470958719080,99910913777216787121500121711080713911605201308487494263101624819470958719081,99910913777216787121500121711080713911605201308487494263101624819470958719082,99910913777216787121500121711080713911605201308487494263101624819470958719083,99910913777216787121500121711080713911605201308487494263101624819470958719084,99910913777216787121500121711080713911605201308487494263101624819470958719085,99910913777216787121500121711080713911605201308487494263101624819470958719086,99910913777216787121500121711080713911605201308487494263101624819470958719087,99910913777216787121500121711080713911605201308487494263101624819470958719088,99910913777216787121500121711080713911605201308487494263101624819470958719089,99910913777216787121500121711080713911605201308487494263101624819470958719090,99910913777216787121500121711080713911605201308487494263101624819470958719091,99910913777216787121500121711080713911605201308487494263101624819470958719092,99910913777216787121500121711080713911605201308487494263101624819470958719093],"NTildej":[20539613942852364097890357541124859329931817468396278432713468646303963073659662742703665137736867247354367523800071318544570641421320510992705137876681425752810096966415479528824625129989063402576946505816887222102561441464103605308386975248012283762854115939987945603503283072741824666735245204091384515192454349252950007899626081034649919068642018312817079235168086885705851677572363277983076857313399016624874649811334825694862350059490166759704819411086564625186038339099281295128259092469609539775245598320922394808913338827772001777479207381548603315272620456484970681705115865233047669675602308688791376160589,19461028678249357721701139019984545699598216253588699892259672060166427273458875608319855785678884811755179389274380053495578644060470229307987007292965327985966772681212738091909180148035785695413643708212165777295662698493311553457174395686873169155288384255670661532430410131045712913078128214239252258473814281283319061613409102410606683119900924722782015902970301519339718368508022893331969649513655635811522767629123667744907556474126774472529158147258343482417188228144974952598132795041139358631852141986745214674779692377899411672630850213748161088638857089501019216868292821676374914063004957409393293909513,23815206664659393600414832732918591362081086959256855451108811883313935088830793690110550688160373127903180149093000695761674277348327575728255258492470452704258920461298225437641154249481888087192237143947805411796310656512191138629555279666557122333244803756577286887501632314162770617970064401783626962319950524158923845138939649762251756759762119774585338772559055859463599094869423262313306255644927649977403492926253217608523813644206820059309357940964633363130901166057002430269910921882664166860038861390305316020579398429144038386189480114288127704265879389663380565983482028227028306457603727009698486364281,24531363009049563762536664273685630249930678743601473345646756718446749360580428942513295608401046098557387011967587876621178423418085640157221932880387840241062539585907115950101921176093340357598786734576629107604766098059509560466283874031181440387973563913507733219768477775440248994272649062713092103053254889978195382189063452107439308150731662099755008823588080977928436274879799764825887538020606485093127463680041134931480024720440536560752357773730443722294290727915022250638670491342013254556128005158924861347226548459626859027825687870031912255326425000561908947972742109607669897905187712585858898757609,25485947141960036800495601740358196336268148055632283852581334267632567089581351729697672659186150817483946028874699734841543360085445274610946793774678284845142698994270979141586640525566502581978495871744643885460820923876472270768798335817566781711314773489485670479771252073613546268231833675772584402239718946768734191504723089294480532048176604551680713541748910822012363078082926628834536634899606309021451196325472880525430322895659546741570135136047631868000597393506058143850364801619503318165686086392731222189995494225633540472226098357551602534472541794408218767265775850366289511546336446350346021282237,28927199961592509462716713052933904239681693743133323458100757563361525410670677174848159248824087482997906403441479071298957717300803186875289912194352025314864665854179681659546207985006650252942140268140510157106320849846175665072784539119695315757729095462689260495430463870222739869312073694346079553731438032339737072477343055235278557275309616493517920166164080693605271556685355062728635594753076381152709174590915306592547837200121302421882042327338955791916538647734045471143845013412592155994390976714634271247514800401724247381959070976404354024140134277339724455784411154537706347451440209596089260579033,23535119694477523772171748044630208131923028017288499693412795663706886468394056769073862998142660508474676105711590469240299300182072142961838102383606369450702330959729879893242049940029310408964084662077585876233411878169942718467081776763994846585950049650660912827541883992039288017630464390592382481783566823924532043610685633953209522603678841504652207254189077646669746333277037092923165111872444873598439940966325805716105630151638779643981500665152639984434504817034412086671254173379166038071662889121653550757613052820175939040916661555723756176613161036717523938816196299007092417098079561970714605061629,25950783447263038071689830748627856944354421735888733670277679971199180982562433131778324823115329151828330351648021612294094370722267669972986008148650808031918722892417970047773133521052009921040352676366121022268583455702531977371124075420219730460605780729481918672698487964603151661149289116143779941433746038933525309985350586367303720987487112290090195247099032317451409521767630753382551078895196505751734814139673689437231496521554705226938471456297964527299627857211400740652357956604961830754401147898467475649318148547949522809325493238323065337997986089837089904293908389128632840557033917922339991780941,18687318215344566555182740902454336428592486945614858718824661784376438207943593936740995084200358460316665071770681463630810552799361606949595415859491617650913620153502889285378972038135570359724693463761135116433672709408902151793979112715679738392883186006369274528906256519536716049908878346476950103274343269649895419042195937774381514132210454482820166758270346958078142742840173830940449171621914508101385104081796180941351697633772994457709351610367195330318869580666697900958479010130985251846923421963647318437209519428820003347978947799013079168765159404172743072632243706939700207639779907975142224264481,23171083837957860801722218699383337900446240030786871268841926233540016534306722256418697981846104677203759841627977766724259030420015851980511088229043403050763668171722648141766116654882525867416891436685059276174192868946692072206824573955678962077288068058032958478942750338128252470165933443869447212456023356245726416751721989152798706366691818486325734110680894776063318626260722657549472271184224308146689662638536101291469177898475337027531732897213355102104990685266062044811809193138366772764276162181116512200063463469172637189164324496242489479899844513951546392297220122152709400797483802836017803985829,31343857270714098359641269819793471247744609345771779520849062499842222751853736635128030263011267623933026775894009843057499037409921342064326054830123558338476304900840753732976691522721379417037190976719048367738172877422341695489954487825668390415147795382659776979019893183466662138357984500601883268994989224933833342232607751640920642550766835871191739404896219865225614116435580799461951708239551693029017567595268404121330207564314786956323833427106966279493560190075571199071036639702485305576334075428484139050116713328535867597124971991546934922511844853709001583656359284723717084806850145785405536911177,21157487427733991932564510362138492162446873104287756897983482468142107066461483198236006898398559574298806811271053872211924774119515269456039458266616445024300383802406544466004007569246261860103312006457776588799344222340569710165666518367783547810282003032927364478322210948885423703591814633243286070072754280297773344097615910071723846039979528910869815670975142743376293197136856592859188733532786144697373533341877747464753616005694543102759948736736802569257325101204596297349394258616025918915521692968786299735438817719576226325356937526633071323693338940757362235570825853130085312301448111119042363796113,20871071186633559430638470998115518791893553646420368867902204568431630269565952322291766136370093127894084798814242475456617969102595313205728405129168253735048454253508700456761223106599134617920774227174015124829476988377890165462875183814841087993485125686632410376362585538078467534668954228084080919739417042353928509644795709201564083148094079836306167650314513450129297783489119015593642581024870311297891618816623633162063381775243950740681581620150958717466968747843706102214690157071025611480716612116918336154774385432247274600064909320680551901771492165221773721500541614228617829117370166464409020423677,27392140202372139560911530190722295626016991167776777076251374167016701252229100335980281077736021393527993281083564981442696373714433732500818431355034758384480955155409564373832745499649881975977124862697809360957420580753883129965594447943274206109113518479198329538838000642865155652137973709624008263285324174285285129803357738290385065522262059795474318914719823768887144641758090777562619592046692917101170170722723905514971631800061092086777420826999668590868568525034863406950714560799453233548147404988580929389926995856613912328981176466707497680180241272497358147647189027922268738449537259460751070153621,27430458285560064975603737623690566617914765114564307656159371148918349993794669623672608540855772729568670170546349850367039352526804750358257162362490778729908291097260480430890476823722553654389178498566668573496227008913481934125881578164602723285712928871252207939941804689355173665470036039114037118963971589320342018774107583274314158608546842149328506685304690959566263296291871998398637364399822435359987280203416832697098234360106966146607816540746285266790106830402077656904149244001383199485864465648143588026246539864484902228828598281873311925831114015086450712030764672165915248196209070047454495085169,20958576649034914977467969756965874238364659071947031154211972997487243461262394795340258789930977809611131615831278870909123144191655991893039673506539165135637011485008482874021240555941833074286915507794874804218274011487390148860550531668300157069443584231888571925159473970195937554740938933226402208131160317818926784959057391389980505131685522579677264162724011263439981256344785140426649255485125637348357522582511064347878764724812085894898146080695383734063354384186594813474135513405234523117338489484424618032520881618202129068318264606277435174234229102947510033247339629069254901430086639327996737230861,25673210614761004254141737312053451635018146154378993341101985326929566270344015265597835170941666913606119762699769929117810862190840467973932188558749547474174367822508601158829928161219529997833862214002106486508027112865708012732033692783629855485545330232068552007350877531730729790772847199443436084419382562932662568511421420283558235026303217907581598166628555941188586096538364407553738314729036218493332920854764055946289816665260688813327844579390598566768671973314358968068459214729157676432241630688442073088681756498136814491310636028421098965714509622937097403466307515165856202257786336739101389349089,27062431131775909264962122516003720577621307700606752850978674545503762322327045712593154396229756047740198870458644425173406714147601486563284216353367017457813364860861671576291918230182938220436949095109018225648486931358793025228571750572403143070647269508389021099989559676856968002395615757641794675119572488971947338527037552287756390904188517823120698354616567162661395526975254448758091053074808436661809101512025437321837959528689272191238705432334775200965152419124620293521962173467865862080429867958898040527206234108561471429991355210673373595922083144022410446012714221026174220695995286555692560595981,26101397013404440939950108603288565551073409553356897393691328641679505760230621741096317929709636865532238670826796537369580597665138924272200816037026280780915781305836081579178356868109017075793286763556497902869947712856535743263321959264839901002581734771178344662509473227839268090064000382806059250315977679226653239225555007655990623485545590336008766750972486014525144801720879444739045959169483687885427725508164188831961197284042818573448808100923870021600896976125650269597381009562192855793477760166114366163011349461311146903814241124631772470784181050979028948750586113514587005436500903242591757553293,22437602225740742482465534898349205983133213895660550238212001804732032977697798637757435728694311659299624886491819969612531644822478331097020027346346025174540910579800256280214031292073085792970245723432769912206355626120327772649905875827091190500315669126429992547075064736037570537735332469814000462556933603719315364923773085086614780916637137068518726889173784282955430621992569759561719528189938429235007732504425905045067985337249988673084527372002559031400047880307427208848753891291386460253720313523072063965808016289774609282102972264056704286287440985034888143293816594327214769326166521224390393446693],"H1j":[16370062914568124684409954423220013634799944354368183091925443712820668316759795091290952642141219645055533606292548565759917746455430426634828957426644826424037530474618159463204943752577732484149675671820306363344833458247384057865310742915406677379586789735200748327711872632191061145184949312294612467345847214916930759229195852858849386686352293049987465485866498220082468131280135383612600619493426252446949294373638968518891137429993551161437309269629260378927918725566711632082553316166822070110359114229533322390061282040482480263995079579444943917107997110057038662405191417861817663789094790962966996587522,5792666313208572350705907594949414590804636531753541567087068453778543363077542142305947911768781865374122070750607847515026168979710170113788718287465368491981654823945993941924700096393523941715256095048825025361038086570514643251828085846380954791657627403414038681940866434304045104130214177360598208974353162505514170835103706979081795485247158115653501838694614859268884296606546104394637012764653804556264770973741677326601115655746125293204398034469241183574629519235451142797709676366285591723984602961129858687877266469708766607187000988412118886394000517917001485137799190522482532376333362935442751367745,14510201356793997359892744405553071944121896518459738320470368478827891282273167297002903311912769777071155241288755372185351193850631471716718530488323104261827697027757019895835360274243188719367049075501436153398857359555924247334095665350350441220453460409146684994664351725204034521761578947269005519140498383255606322844603919000682223940913285551513356600061526959181206093504072618536296265435830192715190515397064435874311583709516596584871136822289753837472532490128304199643440789002058080030111113389709287097531544417461853059085059819958060220257218705882557929843952675556987949500595639655528439052202,21994027187251658420706956116678134303619268245311594874227984400819404446053485122189884678892175444688722527594580466254690437593853064923544979570444911946308283663229116693350631331935027065689358169246815279257122823014594309629197723508317910829246255814111959552337648906237682616732913305786178221005434606679461852547394872592127050442856550471832240167936976142756988960345619830477159914332536955389792251800932867389016006568741180137556936582683389834385412181167798283357296952856933963222988284608097870458140102834156304710781157917296313315513842893014212063887070100364867105131178923785373561146050,9913834538682656788610829579771569556624609911472542281771864528920206652057360227595914694025069327892774241543292898072673087864732558768588752951687639831868499912733997907550450742144719953844448973554109420086839278177283587750852958353526057789017170152122423018814264172807655239353760715885145548388992476483731471865364270428702324445078126354834888878640191523880163270112743069852403951565444480363239177556818094412397417215136415082364220806171351930690164376890892251369372868624028034980680685551131786332553623705883769998271596791035214982761974622986462384695349153129828098712177799482890430520965,15464554656029222110560140639422624868539470020281691165975400448606613120973644407534365935510334228227263162749065335291017684520353168923100727746351715681760916446206803485743114757577242723665933043744987644589191843035807511863595701170012104449542518101585729174897996392297770818633483533801844500665798250501473521227123975005972911918718226524366806206633841675388137041998857549215313632375036761617534744890091542919972307048750757690677067439820416806817051344016166652866968067639055986253789416713411110543055264622333767216550525033482750914452894139691102713436731472281130988207399023815239852528906,12865788614422531768878171769038267076266208200249164027644212721909963715015912538682157638127903293282023380796412378159235431043017021949518573892381565899437599164703723050587964116914107635838030249942901605297513982608974593500166572552953195544515492725593747884602852061628830280449190167844572097543184555448060083835007200101317266753106995526429573085540857281097156159258319440414895242242967023265742835942344738184941128584859242462621792495405423196954908356769683815889035326257091875874458718611430785903143039161526479973858541524126951528796262613552089943663340076548393182371918642954593889432834,22194516202811321146792934079465991238594712937226367504517257988113211333368349800836879103947252405610400726941861867633710543721876626238467090611506859331575128297406631557631820626534381998686705168632059305910804423292984195597625141279765512951234238593649775486094326905655122386938572411401132183960062730500896105597665702000968846572795357957098192758080717128908256523579293163137417423771381528097786100281383788052729825837521137512379280310081930804124457815661946839040621474089357381345723789618079958299474682840114875558952249988571746058484000722421698440994062460208554903525444210802321182968014,2022329329707369117437055740094404969047484980501833952214571687130852032499620508208708908589247080600189902502365407836277381678968110704345539053376355432754797822267575827372488857681103447936055038802753292113151984972961755143427625893918328299356797405969999266508287378495280713821635381697950988327467894890827305051792226857027384943282520470216088404776455333696749084292781033264737672933515625823807581567568754027253581653106384383593181057349330506068884659072076739226363616897242406137010778123983315619151551375977509919335513557274798510437948502408760645678633359245877721858614575061700591393721,21638702445456858422878500352234793329413106731788942261751796025224145517964611169394617788434763506002565806620170893339110273126875286455095506459298086020278318872581385674653253080383128797980439557511752718258375238388481802546638936192461482797150514683008473213407715728694302414916863995043974867827876036585791719812271742103323384468954527534596036617313432433874380308883492321501736879178345427074046787174556058119038049586737477628511165980047288251497278209275581664775606335268904384984155864116270266473616061700061527150495070719210903471680082400487754898061609554671248760480063619759950744280907,20932768206097680299943959313782719928339866139959731166252002876096405653871733170637914957728294590217455322823662941811142831487382716004980657707514358763150029924714520812685697751484102120909926147024006189544048800446501267477163792293393919588659127430522309503845365000611784195390022621092266420671288509706282186373855655358090019051530324622779193478505342408854462043136412488215465955955421082850282626458587043647758494935495915329050933653468179762936320308005669155322055934931071589853638981754901315764484414249149121368560265856082417024956730272011998498550756243974623835494966366962683389714964,1365816667585940330490355905311774458514715320376130020996515573937571923987574784307504874484515899610747050162880466334946062918938639620242137371098595406424267003818882220942016240927776918797542668204898851284066695289242978919397682088055368818116198595348273129318762376760634794532531433638073562846988038755248023571028829475051882101071203979111269507596248527906600986677728810751499828436067766182628039345309355341295172437424660504415028913205507139100147921515616240146193076677157859750716375066201587358526136840334151066553547201088947345861316322897488659331106732575557394540428972305438213375814,5703448175361065536885380258834894924349694750000788978424055908887487214267289314410654116737467233333514153490994654420800717947051017245903088635547080581089891657444714373263301759995815635072257679749046151543038146531810310826817366207696928190231298874979984114964348460891792295427444943206125809938612729939665048974349693961742238426880015130297226114935093282566300228257419316454068258492582819117310017835605391570376283517758701794125467889060184214275911038527696714000045849219024045243597506828846590195831908281658454892131533791810760325400211405258812142759529523572815227489710851557846638137542,6412242406353564485058502679404605624009190790593030266854505291800626778702270387175472290319448965303250433574173375628339895100997329474893279692868549940279796264731093585208695625011062617868491258157215447275957107991387222489580499373804335870682739788296835432969262878909434810429803264643527538555130662379672012787064972208117475596665593916782896686056579449802576468324812730306559649834202797329883549294599723290402017221639617907711497472325019619452322282704828796586508386419927496666562295856731151167316262475184222145101211618002798513055006067228431048839763646095282531119806559583105533794495,12506213831497706601305625665856619892819919408470741644330076368184175310515183251146177621238406207206410185643656979107225155831507800032694528257147716038515158570256044209419514879851010106278924359714862316802415670557334433034976750101928783991744583819411313589306343712690219032368416678985323530251239318661396466801994308940886752046080901718450406046375904389766893043894196541576969928137946704159382893563356338387889137855413730990126192021766856444171515497507122402917749807424621383187173538906785892654668489198127757882153223185090960714890345630801099413698632285321494907662894187137142803150791,4340320683992731212484211057800765907410470847269768304639037529290512671362801376775768288042129836088810539204858832843247178308000345604701431226310915807542068901686097542648829915466491213307097734259829414895234796525272600474326857346693882386640793824277606043756669695477090601330450743232413209505539149906338741119182508496705355703793044044384724643256986023764031438551900073624644692938223394706241422593949897781383635695299729171084301185179708550600098470031089086344919627503113655735768701217637285566867914251954499504690075652022468818725559007318841314414541437592229352428286215595483845053638,11992304082547451264970842283976418853821301172975086658682116387543359417074268643442593212371361490968819128789238354995117145993279593426471336648259583293294202599078859260437992548184464009386152763827946804967424362206055435693041324410893236957405711025923054702040161696386453571055246924713260145964584750230359074777621444549946362450468684233332414284037283955916761049858000878784786268023500095161975906495439332741618288811384519280375489794382891880648564800750663555801045203854227681083222146920912455217541211811955477767635787030014152643158711960638325867606918508708678622347924499914937535267162,14695333877946105505101457937623624377562698430478247685331048607650568913937201633971254630714736577175024535322415669442798271475956496536083972430246897654017678266490639701809689918981250971730052435032797344400248226649579239038593902835536123498617918666329121083751772876090103853533035181736615043011673643017303605152279678650202512062770466963460251942403425462061196179491356440328364636048438335959347603428717042954470887883300891927932651483741068303515425618933688194621659816079976510221005329843899476003615861655015952079393164902282608831513778303062716347528913475870793908798463564832083549613643,6361624891550612817090909815430156259585522002511378700573226127309539860650523892977168943678195716824260472829831132024282728135758912178943090813161584286046605117495775878170654691942858452263763077967647297167266507685944611403131069163214134338169098006751105941940463654618427873599267528041887836331948305951890335742121311832653316741398094161561749334956600724220433324620401615490879450816097431926849306846384679126203940987154375373597650036103822699248044107851648286585837187416880739896147553285981829664828869063480707437325000260106329487862878699057790666160151383639198420965781777521408308842299,14948927140088320458060089936345715166494298631495857212773926944790409869483957673185876995292328343640197788589621807184518806705821872810447516194927678801617268846361533345460325613772855110322242304569109406957894646727384216069315325052819333705539766154972989576988248927288284161530384846682668538198851543196833452065614949748530253693700328342501577900059842225778082026779632761099626760985225309957646536118173500439351182747667021029407125807666947346322131872894915154624415940708414296769044070685030466034270063053482191494419465005898644603408406165778424189251953592599788015054586521957253320449350],"H2j":[9653640790649475435050720061635061544335995170813227062007808546473167610366804040613054457009646767723479128021709179513573358845884462519136809844401815066012655857973373223748942767836422506840658738556503260986697250346171921063441485400421533124068250604530993514803166454504801884882297625678932746326066096923436475087338628767636689481829832307623108408425959669915171224014581673426602770656342925462023157550194457295116217893440581116140543598050947318929500123378985275492765280831578803707538206440354119287576298034238031692982504012470196898579719660373199491817717767711160029710911173725338539566802,3578111860663702772408903345930659472256129868015762875031051677614699117364424442270785915866444756532836287879751640816575659073006676007210405202315496945346450727441553016187592354415793891110773645408147683476571812485850037389853330648238106038729525075512542830213816094853869971661719959033499816133612736102442725651388405183329714325258711655979055386253406319598230253658818466953001815116530962213661362799968355793928849708876651937113231862631691372187008559216884922263381652908899796744393080985272287681952842592674663712445064149288160957033524932550150413325097150870149209345404214256294282382085,2562656890570835296352376205216590519360952576353253013086344012422175466058176642832419040937235521572328705583208834436813588375562745525224328564354560731400723267162764903064018742843839822445601315505274421672289602485557719646504320106522113645676636456687468751723898215955665240524139836668877382766583475339565598073690853848639545227831264115164596396262772422415214665834769274554577301336288865874066248890243346947740610544045667761548206600923673948174739356732295677551749947395385332556227074205668024351973201205328576603362256016900712683688241615565934460363012498930253514800348031700419220337084,22298685304249156715841839507145325522077048988910268345524279200863227356693376151033928569980263444962701165900514081299580440300365488019578288962534096517468902687907593109404000193096117803450936780948162440311950526862133749440555125530434273281017640257175046682563772712146188162909037424635371282116160809281350332585723737917537784267577381007869736550494661878733387948458251550312048040279754696568539248453484809390032249968377837207868808482658171733689439009562188880777607125039187467565549644537971596666666932158369857160883674108786200103009448463903055431989786220430290067137368612432640074310237,5879475324785385886080118453628099122983640585548725925692818787221734315336181255707999432375105366554548265736590343628955580077952532008988837072008731794155978542038914506112861039350525606157951017828660604272526605818549217659336563240062224484914310161520768881507503977620229908361541865095980430141394883457555144123820008061398004875781145432780438239985999952863196781468403423593755390719871396312035325131303835880979744451815683310530516197085535308856850866798018523735074120787646575912319226234213646284739550604897450763442470406797690674949855848424274918433854009972115369882751833585035329242761,18385446607341413929216752317617998458160849115285197433981133872531647462267817752048089105851349541660795002685652456000086108157981979426453705134803682299691630928200421847304354380350114763235863451959398215394354125874494984531309790405988904217354164073819568789120760731377280912128364362051769093741704293517942028826498663326655241508795914202031051398724638536523567800437872676476082333745719105291491676453403521845621182329449421075607837301738332926110019535833222421409565228043580701032497151738816862657210572819375918881851411438625526045192015060739626198734346744421593858157488507552447503219157,1543023308301318791291636723263661645234407352972693347930324541592073282303070472660827743672362126204249434834670307886593868303926045601951702434485524524299146190187978789568968092026789881246345813079894138764374868096047892517784410005345559357208978859029831295378789933334638460830863012154730679683049737545160281582305039520027158141403805442275432519516975114987511502563484403828987844187725357101956491714139410763551382100998178318863295224089354110436171289236674317711473441156004575613857935802947903186710273135122934512388821226072049093290647716152026391828419205457729234939199662889356527012444,19612969155814925927900736991694631498815639143900750081709470615537990112217002271570654324774711607889679093067885009086620212727925361021546388555967618760690930383917718167829905900473725102007606380323545403188303409627969907029774876076466652636827981089598601596821629485556381455948439528301393466043329774616323471054547330305463639720319551756652789237846520745512886328152641158526571443916940675394167134193466655448590323552123565655514390433855054114283235652222186673800138041449545987929749641868001910765212175435331820335256408276886037716378072029444719891008048297796893611911457701948988529229282,16728597479991680407332164223276251930971882378040601546182090035388885277790620642130984559023085396113670088325023048100279567479347085329073035696608554975777409036805727779421519384442869313567486101701856985975948368091166211269762554257345698853374624187196304439193724792774291722910128170261256918581442838390388813651239625403911503915460141004046718650178671549506593787333200145941149923809156438433492770338609398675185696331933468246886804722117355530728325631706711888199439210221397335620762682713255422110226515677047306270190770133307509623731091673964502293431264279055367772707113499782043802219072,6959317283624626561280838810011851848606573383456333866356771642710009365943896928686358713606049305764133589953562485262421030190625379899341516940088176438653144375343629199857524649360799157617467464667207079997090732685762910728717721600193091207478294785009859545546272657408615665578978698966309579302786158306046780048259033960048367018506262121833776982527433736628482989970739839626561164331780819203300647377931749431379962789021848504353274218995997754499900534324222498419599756583548358913120017762065234354717544865856293340540081744252368993926137398125931373959455585431506453093937785431907339954440,11707820384786665143909181917722140695066077204138675859555940823963085499198625584153264077484611920625749300043796981737297557284495008476240804003977980903028035986014301427047695461308987163082644181568819427026377861293089760745032220979974314071873695748444473344481739404234865330820136242966321355292830007655295383627072182012764804101331409332152687101319613845603099019594628684448783718018158413013589965095889558760502141979036830513073469713570347578185733951700672935586145889495063730457422516713768592535269075934288536062686021973569079600458124449475763651523966025703378628943004868525425132768470,12680113365919882057574106113475868522128522384382601197321116786250024227710942753687346378669117549887826210207932325610070970266526443555090342822407043741408930676918514338947859254583933603158241276952467805479024344654828575004834480980171788527657050724406198542408746742354531228386476751247072501617975174749412587537766151828306153888252035411082379552917399551115964687725743020641384211728557413837203373250893065347048255589312756928959773947595990023044227966600250595372063312552514516053386563033360883348059069724261103859193470298590631028566611086928803669676829225666250863192855787196720603673760,9019657743968669607069997647539968262488442864840563257526073127843215521457164945521996034009113740811008633126128201485876365964359243077677187550395794512954090076458031575481109943534530172796807658845833964496790520042423061347000207701119849250007073432625973802817311058171823571086584900654526615124913824393095137876668486739795620319593113487319306758076868523633806281732675535191877729151172494277333403640038019691517232275137009983348569240826245496914996509643617684093222096189728055561573909735610063401084000594789204303691795045753669664876756897469727730211469836756344045393712182476806348262481,509727692658127329234819348282810282823358222955712460979035976368760532139665502509369544837059902335508770138210475703837249689840377266421270410968940058538125244069674567645496962345390684467242600183265156396927471901904730403435725549974213712745153254130090979413745442250230122176329142735628394058559735078808655502950813887104168441824680204081093532561399756958380811786995754253778833219233414597390819387529718886819478101169481249247654168746478268826094117295037052091370216680279456693786586815595643437522530315484348520350527079378100131478937805285900851443697897872168020710497135465069780807687,3842294189873253197555038084451026657880884971357471477404186912118522652991181539287485996470843289095459960588932515934990566949413638625169611068786524327230092661471599333492933504858312443510340452825109814219748343465626968500133039743956522352452046474898271016421645025612565409422475581907506677274527441400119913285024497410632467771786023570373229380492185234340140113773065511943229164821322784643171443642045254567266530741214826934397811463635644370547054062567012016231228876473774669826378368361454200858389911185989849447377758286974943747417740672897265471383352127822433439855380640722238771424561,12605457156020973444763168611522695283402376793806466187139735133742095649198553225011255516233464381926302993187553632508703365300132776800901755737316341235931477791227746456204649162573568121476427289406145613748980339685673661511024577823438911510307584137593479079190723698666793670318162798116104492476114229973922338166221669934104784402698512349426984473431614385866651807327515058966935011035923319124790759086336194395000632944700277782112868323483780168144642250558671981757792078139349701070563555668082796938131863328410412160150471825619049694173807371104601644825755844313657731729068891163705563867555,18221138784555811053296911040444811422299569221370698341523745856400091281377839778678778328149110548534138934160836481393838346908432982920562116626677959686450236292050295531261923474882738697393510842972966810110218027601675376030586402861098487543863740705626110087204717386977952136809165092530095562928623301371629208844732733664526090007002304626939446606391205626126192870615394522174649688440887870385705569710809581575204639778805466412903927058799148697158251622260213645585723159916754663707237605872275846686566820885362722073881904277317597403167380835907876296870877478221646920284310430371934404822311,12694464409184116198175216134705674117698495589897734763290223249700439697747213221960704240817308024376618649511257185410755720163743943692791263666036558979570909072667619923266653682384882259644954119285287063471541002032435823410204495631358202104734018269537402171761572193134509812396214919229814690930600798504895496564687656801956575973479011431776352638782289114699743527186781919502658003154674450714069197242726393985114420810547684173494018605147976810102913734546162705259030658206284298418521349062777115509219489672039075093329236647292016824670535351144784388483525751068225542810044999850751665224074,4201765615355271720665237538919680402664127861292891404309962354268106831635826650331041297039291644925592311983403700464576600435518882156854904159089879201301912105368413055078865795374091914623189759593456721300785707753873135853357294442043908826331857106210726005526370024055346666586491341046296314798619327898858072624823009991437876242325624019938022318176060332738994176297193724805935694309014605422020909137014676945305249645201662101488974241605863532571828450201507584679493905057922784236072997143238879363168245889469038437561181276242698369654938178116001428367837409133015026021079614840533626761027,5693818583095067032554302348404689889827513405370432124730856324552577938645345928545249455102636900381970277642590696482249653647276002965730520652542065397111012479589269283364878130676178205766673654461574816233876555267291293343730094421360715866449358521574582941335437947403997555554148186986038285554629922609604751054748762347310142603219823359220130919495866316927224981350998367935679597793982889611172206443879512553133682522147111994374985808397513270886689704297115982752710085691562031953231724109895260045500479387280386873351701423764105530811712645875225583048344423503433093456461313617037044573606],"BigXj":[{"Coords":[31961961449149592290215619337342545369164998201385135329342844666166714363705,64636392625998908156106021830673034903148364934246785109426074897879798496695]},{"Coords":[13561027879868215202586968035768135752207534764402067848160241312364043370282,31683215740694624076579960720726613640416539517460242899883851320256877874663]},{"Coords":[102970472861055393328233354777448191839076263179087526130927097177204776801806,19849778771794568183958877322544789075545226949228544528619329359950140265115]},{"Coords":[8366486354279759555693815735694831293559828965602250556327317858912116678471,24456250444071880675953816335612932507033433175255559522554349078047625549678]},{"Coords":[93126246885046599201299142306317944158536766260090154798797491446571717586613,101632074177392193573512178573083324222329391048269493231849116848088552218375]},{"Coords":[45944473181199785374833853975473363930687909609574532965286298616052742734642,49106561873713078177518155217967815241790729328033604070651886838013799968339]},{"Coords":[88807289702586806295763026580879412609419986472794654189482668002118698433065,66889255218792877467551818840857264643456782872798377645941824720058728156412]},{"Coords":[45745777770010867130655637386117976632006388263133845103488205463444756286557,58413618959379828248439575493421719547880693819703454359788283537541749522854]},{"Coords":[14931705718614911512649079486924798218629483414127465950786381421646404878840,70853895869521315016717813866703398949051565204254795550601147911581008651495]},{"Coords":[31702825468512650039750289022997764002837389172468049717092331147393818254752,90704921170203464181329063311130512192295590723462840980995045506481351030148]},{"Coords":[108133277897421036808605843118854356978565880360693563552498521263092161957794,33994893650793696043114830343063091347849012751372498052809673503667071259863]},{"Coords":[13603746174106309213882605187834221055267478293724779491981408043396477605150,47502402322605913877968636451206238145707201411072573659819652572960084227380]},{"Coords":[21962637032374642863765173367353663611071785709723940819398260699915154728736,65876190623954751874122457014542214494068664571689464338691288646258987627994]},{"Coords":[8139291295258406047002639746372064115101651961499427493344848502049438028449,13643120656693319356484507306610353728697986968072320539867387334577150577786]},{"Coords":[871083651129542234211830236854985246175496411885064575219875767816674532739,100904963893789549224657775356884044157291453214379932308347421012612568685620]},{"Coords":[98028745019433069815621229762947408124245116227553507407780733119772046992520,60367568163137055112812282822118701471566204774343904929920219271364583776122]},{"Coords":[37332951852807254347441974643993866127041633128152922228434313154811023954744,56046459898819968566785812285970001512876757161864884424831574905585289505077]},{"Coords":[11223798616675111197150792218010453124916879614948521844981845491687409376646,70914747125199464172751182264377339815163078089055967502760766110580370145293]},{"Coords":[62949410140974969962342726366577125978516456835571210444108422984760191628326,55668150354406094271153240357261264601037343235231498038021007487545647055721]},{"Coords":[7611358883569187056502001665501128526153865541559158134839099203014115911991,87617845479447207941483995353359860120852817257735643485765526341493112597509]}],"PaillierPKs":[{"N":25922769748919102678415192880711636156565612427571550685296776086119205445525743826557545692077634738129321690187868055737306626420419536394422682260657759329710259802294458956279773225258250955469954464209933873407784778802101265717840506851919529598154066919091078766953942869622551929743069097967501533345363150709912011028449270819442207860620552088412428865900112120786495620291333470644949767300948329241775121748888220588626655915013364614554467190860190736954650967874940702908395331234632114014125372505065096924932509595285205788545338407476139436404463823043865599023326570565049384032977060875483209339089},{"N":23930233287283899271771864413305422456138957780711273892670074191715648409585503033095084345383391541524625291548041741990557564183855401706042293717552023237439032182637019639795919249455653535670614575331737610284863144094845900714497635996654401300216924764570210541950557336240993007183309433063094227377624710274228010652758134777897718742178998545079447283838099902510469006366469099975469096355736757507201973304413688395278990349533350163833514531655073848517781662614171483003731680841330633223244205178982328422170273570503713081265847261211618499950287557687314846590616484106774575999250148317390509484773},{"N":23804125140052077689856128298352557083678652474445385365228110453726681237860799979845611556170894187976654278582576364089033396218674226546868809651353049956675922595541689542576794678062495339422204984765419389268325283682512000995221750412104207394441438666051694475950049774094896290106430636216894744335784327798634247450687264677393229214665686649911456587168142148024558282134024448427550922487022680890892554782651383972136386958126051377715096556862662265886688077689941967157694195467190297477735450118736949849327358586935699405848605265912107169200547464609552395233560924746135866463084686118233592906569},{"N":27732731445242071631661957657712700411367090291795241371771965432140171981887215839890743735562516245338158767440902124645306227526755834590210240211292920385793070069156192085968959067158127765511651425539136016999745924428061397793021945121990437538890398656832618417715425504589084090095239114803460787199036351739230987513003864153861252195944069425337294669643857426654756086277471320443733998616523518289821541295617435513033264977202437153989318832642208143170451837926277566396048774049270318848738844338850668187024045715008196311523744942555689097435377598835544336914580911633671909176827168167136470690349},{"N":24540078122494262833119917930091872139739129939617606686122284549157786865278292966087938309454800165081094474899057524752572006230843959997841521536274236615511587750039832014979332539924539915807860222967109230298738770371871063759834296194059907031260324597353713442284471130560805946122495294807423458083635025189319558646442212459161798625793784738344309603016513355951936699928410805609866016648244631951643648288242475041729105749202516848107495430809184564037582943457286768883109270231510808158554549441157152513493684930416951758705877335895250913277012541968048511163986915876606316087458297080987346429881},{"N":23068407873896187320610408658036992760323120237076281539139801143529656493030091268390954927616119732305210576479622679524747880246080257702939099128994719527894439722828526117361648236913823027514544862046712398251734066527697676237348724465158893599560473200351530224245041596340220963683429881340553208409699594299261181212989221107530971303522686320513564226387471374456547377291192484997988606654540899634665450162274963086331783789860908282085692296248300574631527561763641974772756130570734735297575564567681595756096492735284720794891113064512997620639494646662790341453069978107064092657029168133504185408209},{"N":23360724885676198523522179321150194474267520026708517257764444663025119039638464657158724624502663558960702469988070676415660798425916276572290617437202837750858738892140118363926690520956187802097449221385283612203760207950600195667994976400493623569930090999021596112553157677485561299069991215207522767873493631366488446241092099654975621689119086509041077742510323711222260189730828492291459421830791540197321337933505867430138627984859014648102694909985043765241359798051875756951108870386862501048751981261038842763679815348130953290890391440850806363449637432840586263665690832227799688631446932015796916844537},{"N":25572476038149983843824758627743773292157542015669155545898739136432359227667585235619146413408812705275735125477228881724887114180658812229689479785083051083069428146070988730518675361280497876215801249358736365876007532614766347833762716625529381645528767502376159614744663698030295284120589012492759402983796882103200388651743368106596836536656368370930363045639317610411594882976032564820311800297421945366798108347221120736308176815503106682839506833524058020959093518528060465861144447540812579976237229589574562145541453749754749768478003306870660214131556451734687719631047077200787163529663274266186702479657},{"N":22679491499676926565249058751269701914370165376325885490706178594236435587374452393672919867257890172146499232592163563478749644823548404207107209183759523050603597049541204457028947474998785130219644182203008088877544305999771879137962239304258371157231174473491797491114277983084811723764080082851754276992307408859865524067180300336894890064430698022388669278921501809909740064260359142339540812296913591956784925745003590749703099702370645409020780887758983568638652737043891478141095930983089074418014910987946825193073588506986312390146214478478314600989393866198945700334073322066709926152728868061176019551541},{"N":23556951187256713732039305973238937631620385080790804249029259279472926645248156172448686117325741554381537031072742207487366612992119859269685828207319515666102872111546619607137952974660084980511684952594879342586512197525409799350424247192892012163769784591542546626323584978204193899561072157767856334488337110957680579926475975853118319141371431419486620931003438350760541975587261961199260033262263106014958269750801811225868080849204705441859105664948039653986722714354940941410686784948916936213417318953574086609821961649007609305029496977916873440356977063491030736996785241653241262171162950673703965399497},{"N":25874692591276389940909836821933328634340387691760211719857424847912710687202655208899136151842265948895002254373718724704209721944297143062448179072459504026936041473424765480639475272190837266572978737262449980766383982513621598580661341958135147571122513631091491976191663115339463730624237942100977649124658328431032849468551008597071378488661492324861414296280692846039598797857140808360770338990664282941023358641770157837364612463858095463039043959476170224596463891235213200808423306885708639894810932553685021558027739945539621344374072593175483199343233185955959027063970833388545231587659014590298587532269},{"N":21093015027631740022404443614096248522776233243516651444497036871175728958780883068858760981924585432192986275662870128643941927265524238598903061299795143929360395711020210769824764384718922898979318706735662563638859312024117764087176816929100038836825165997745175858151391747552772916358596447916581236137266690055236206686429983418915105841208302705945838725058954761546083763560226985859597874827308926656876419352353487645531847757035757295720869824004015071252605178819856102760159009139713396577974830023684477215548955933062314225333947463154019890073099705030557644025494887348484646782031863159015194484417},{"N":25298229297396047246415163429032546137139715727559844391184017906947304850232141234045323209407471473714145852636924268416866274482603754141415609592221706725085407059971638122009913495964543366119323417218834638913881087432600102264473788528537095668778412431377856067113698729914757144153775835786313302871273438949909936263664301138604696985912220658568672102041006541952444982579070062275651333990266954050520365848194152044834016212084441028573044037025009772616765171118784908205140185837844772749992941537017860827787097838183799078426827486346760690086948873222139803967157701952297751113063507286886770253809},{"N":27142202438632787162126599492908508783692765215748557510315014134009044742375492012422395905792294364201376442258017321008269356413320158807932162865700040957744157446176162447390298999320446062496836729102114052332958615915307193716216287036998207324413342337908047902088094382893405585342830460716335897834006040665407645344104524772021574862180664953364488173834491400964015536206179143781066229852877159880337660767454184922616386524557470530917791514588890903382115919687896218697262329973216887300329083882938499296413225108475327673886217363092593458630101782913564451822536507792690041998191978031482893873661},{"N":24506900410165079432913879286738242981557799447704277709132563752281068885918764244597103897934251933625444124974453530023693766922128717584028552755128051187819589410024704161034785358235535327695240184593017832269373629062497324651346586921679971074785452914954524453931920025017233873766495332551435302696547239605953737313669053194482788679487077465271167890491044626060923037626210805459313170671202877996680415217025953459280403666974895608025476083146334864242075064839862857242870450430867849337473211116054259839281123892458791925377357496234454799948092884977174468592367921171996109259120511593665944142269},{"N":26694966767987840469949338865344547117483340362831650227215482575365406012636774021468648984974992022743149425563486792907591668251920735101399223711217247824036472514130615393737405150133409306326610912172081216216331513707092964488994949651842782342704418212963772590286378010081225253538245220740244206602153540135126863052186543426616293649543741875882042173380956119737322204906042367710990417544800462728321639324791151406955584010061660628304199783826293959912579926890912970052339895938137461119473504729752401310289221600181057106776643382986556174592325963163204522372078262520351770361427042538592078722253},{"N":28161406783438289776782541515550232234219338732182263528677255680862818571394539837092411279908340595856411618560352096707955778113841586575489526111758509944691006867155143609674220650793817498419172979829028602046249597147507621299153669762040424244341554256616377217119563525915851719009321686306763607672801085326365691030132510560260181669852932393003570340516931927914922146799899039434467722922041925474101320996856938035131446584298134298675299397155375412990353784006913691603024110559796744887732721945933471868150638226543773483734660294313186275340618342717882057017678734282256333631978096376709630195493},{"N":30290385531723706663194155723402482345164001328034021287910161482488063429892351584916277391109894294446801833020074687889362652138426091460224301803948089690115686705682426193759251182110547546779254274419781083851169949275087832187538168815749507922889270386625094587688358817642053715412200458038741309360104964334706289126542952674791148655002683650712544232003067953586569445443104249283623297733191839471659254940888571771772980381177972566220724293577306168494057111878161156955456998298372496716136324267059071403030493623531599851487444134766104137251811774500492630476212318493040236485031236879687941684761},{"N":21891762840438596060416034930044842446937758373617708235288562429502315391645647044939378215035677465574183685957522821315454029977571728750605988329881847569313802549118091978526315133726370633285214423147938264418314863217805659876561184725718735591303337902948467582966199323804114988231963307083517180657041313131586070203747291724798899561367507615511932716092324516747320587928666160741969956121773346301706809405054989477031949248189136343469258532041255092588255241987397760849320759799542054627513230744643622791455964220513319415609245199516100422991698341556744298439022451385568791478794837569530013904689},{"N":25360934335416714794999313991057897528923718232366653339706494176825638906694689891746545886915964196582662458688535283322287088397853865709093712398485753916163063777301385991907720781358632265326870516346689492128442283774600103789825609570294923480202759046857115137927714980847316960609776972337028789163184648676367675625026306027140091761009104192786329465543720196130052658782412428125321357130192023653185727111578488774341366834046035305712205910649341950409228079277410881842097288924692206421126356254520404943323384573694119449632324221088061482676921038116252201661916622983158849603411299895152156469481}],"ECDSAPub":{"Coords":[92492306118178589821640584737240636977398594678247616965910942704932180187323,27954057508764275913470910100133573369328128015811591924683199269013496685879]}} \ No newline at end of file diff --git a/test/_ecdsa_fixtures/keygen_data_6.json b/test/_ecdsa_fixtures/keygen_data_6.json new file mode 100644 index 00000000..a86d668c --- /dev/null +++ b/test/_ecdsa_fixtures/keygen_data_6.json @@ -0,0 +1 @@ +{"PaillierSK":{"N":23360724885676198523522179321150194474267520026708517257764444663025119039638464657158724624502663558960702469988070676415660798425916276572290617437202837750858738892140118363926690520956187802097449221385283612203760207950600195667994976400493623569930090999021596112553157677485561299069991215207522767873493631366488446241092099654975621689119086509041077742510323711222260189730828492291459421830791540197321337933505867430138627984859014648102694909985043765241359798051875756951108870386862501048751981261038842763679815348130953290890391440850806363449637432840586263665690832227799688631446932015796916844537,"LambdaN":11680362442838099261761089660575097237133760013354258628882222331512559519819232328579362312251331779480351234994035338207830399212958138286145308718601418875429369446070059181963345260478093901048724610692641806101880103975300097833997488200246811784965045499510798056276578838742780649534995607603761383936593190818157982452076529742691118033799484007424558221472823057019845576524338529326547140758041331375784960911858045829892681057131776224775263048933735211845835188420860399804620296626962593900330492026087917324199650747884714573980661612198850328772513448352383690816471940619112747453199426196130352875258,"PhiN":23360724885676198523522179321150194474267520026708517257764444663025119039638464657158724624502663558960702469988070676415660798425916276572290617437202837750858738892140118363926690520956187802097449221385283612203760207950600195667994976400493623569930090999021596112553157677485561299069991215207522767873186381636315964904153059485382236067598968014849116442945646114039691153048677058653094281516082662751569921823716091659785362114263552449550526097867470423691670376841720799609240593253925187800660984052175834648399301495769429147961323224397700657545026896704767381632943881238225494906398852392260705750516},"NTildei":23535119694477523772171748044630208131923028017288499693412795663706886468394056769073862998142660508474676105711590469240299300182072142961838102383606369450702330959729879893242049940029310408964084662077585876233411878169942718467081776763994846585950049650660912827541883992039288017630464390592382481783566823924532043610685633953209522603678841504652207254189077646669746333277037092923165111872444873598439940966325805716105630151638779643981500665152639984434504817034412086671254173379166038071662889121653550757613052820175939040916661555723756176613161036717523938816196299007092417098079561970714605061629,"H1i":12865788614422531768878171769038267076266208200249164027644212721909963715015912538682157638127903293282023380796412378159235431043017021949518573892381565899437599164703723050587964116914107635838030249942901605297513982608974593500166572552953195544515492725593747884602852061628830280449190167844572097543184555448060083835007200101317266753106995526429573085540857281097156159258319440414895242242967023265742835942344738184941128584859242462621792495405423196954908356769683815889035326257091875874458718611430785903143039161526479973858541524126951528796262613552089943663340076548393182371918642954593889432834,"H2i":1543023308301318791291636723263661645234407352972693347930324541592073282303070472660827743672362126204249434834670307886593868303926045601951702434485524524299146190187978789568968092026789881246345813079894138764374868096047892517784410005345559357208978859029831295378789933334638460830863012154730679683049737545160281582305039520027158141403805442275432519516975114987511502563484403828987844187725357101956491714139410763551382100998178318863295224089354110436171289236674317711473441156004575613857935802947903186710273135122934512388821226072049093290647716152026391828419205457729234939199662889356527012444,"Alpha":7446220909797273290857150847333764536679598070225924716910774299756208317947998879432542801905463849757911597767722495612156003593978336290179062849873029966472284981435931304013850941144395359311489975566464439085768729975092900767515753496103115717088967253387575315478981967678199167191948564011048159897032493110367397028621798306461472892757405835493359586405884130444881332776034465561429634462805629246766393198911334536417835805309780163982324869262816782545201261844871093610011507559900703810864342820765917368208956912152445847323706809990721868811205414041849831882112558026072012989084512689129465921411,"Beta":5346263327591718094088423449782021926787014175503689358308103800510758452128714312941624263580805297208738369474537064901031379866968997881824698656752612151059925677854451700764116674916628837175914050639286686545859877454230005575838929910300364930554855780041771784030325524185728953427361972558858648736080021261444724470252816953059537976643601153774828465746097209982613848224233140222746739440734520686767700866477822624635416589720777086875309397880063760092799247901346867640460150571760510924874016990922721385057795661265598182707005477895661092688530710287578537652002753598851257705749306156981234932718,"P":75311135858552947916191137633615424729334407230991272646269649846253228979784769804293944292509615590520550723117687722048649457741502890852449867332806062605168599709950666207396557953101675204451990866231913411620595409954257775188613666469726296017142248561251831500694230683147618791860203482937012290561,"Q":78126293761789954753594370895486775664316889137447723729988571263098955742550025066495248629116793418349030676288588005904108738841336508868139794180176711441039146447660644066140867425740329089811214518780980923643397502550444365364815765303689528201070645857701801005156537864534227573518685152201520557311,"Xi":70749897752759946297594631123139412350685110426681961365043902108247798533170,"ShareID":99910913777216787121500121711080713911605201308487494263101624819470958719080,"Ks":[99910913777216787121500121711080713911605201308487494263101624819470958719074,99910913777216787121500121711080713911605201308487494263101624819470958719075,99910913777216787121500121711080713911605201308487494263101624819470958719076,99910913777216787121500121711080713911605201308487494263101624819470958719077,99910913777216787121500121711080713911605201308487494263101624819470958719078,99910913777216787121500121711080713911605201308487494263101624819470958719079,99910913777216787121500121711080713911605201308487494263101624819470958719080,99910913777216787121500121711080713911605201308487494263101624819470958719081,99910913777216787121500121711080713911605201308487494263101624819470958719082,99910913777216787121500121711080713911605201308487494263101624819470958719083,99910913777216787121500121711080713911605201308487494263101624819470958719084,99910913777216787121500121711080713911605201308487494263101624819470958719085,99910913777216787121500121711080713911605201308487494263101624819470958719086,99910913777216787121500121711080713911605201308487494263101624819470958719087,99910913777216787121500121711080713911605201308487494263101624819470958719088,99910913777216787121500121711080713911605201308487494263101624819470958719089,99910913777216787121500121711080713911605201308487494263101624819470958719090,99910913777216787121500121711080713911605201308487494263101624819470958719091,99910913777216787121500121711080713911605201308487494263101624819470958719092,99910913777216787121500121711080713911605201308487494263101624819470958719093],"NTildej":[20539613942852364097890357541124859329931817468396278432713468646303963073659662742703665137736867247354367523800071318544570641421320510992705137876681425752810096966415479528824625129989063402576946505816887222102561441464103605308386975248012283762854115939987945603503283072741824666735245204091384515192454349252950007899626081034649919068642018312817079235168086885705851677572363277983076857313399016624874649811334825694862350059490166759704819411086564625186038339099281295128259092469609539775245598320922394808913338827772001777479207381548603315272620456484970681705115865233047669675602308688791376160589,19461028678249357721701139019984545699598216253588699892259672060166427273458875608319855785678884811755179389274380053495578644060470229307987007292965327985966772681212738091909180148035785695413643708212165777295662698493311553457174395686873169155288384255670661532430410131045712913078128214239252258473814281283319061613409102410606683119900924722782015902970301519339718368508022893331969649513655635811522767629123667744907556474126774472529158147258343482417188228144974952598132795041139358631852141986745214674779692377899411672630850213748161088638857089501019216868292821676374914063004957409393293909513,23815206664659393600414832732918591362081086959256855451108811883313935088830793690110550688160373127903180149093000695761674277348327575728255258492470452704258920461298225437641154249481888087192237143947805411796310656512191138629555279666557122333244803756577286887501632314162770617970064401783626962319950524158923845138939649762251756759762119774585338772559055859463599094869423262313306255644927649977403492926253217608523813644206820059309357940964633363130901166057002430269910921882664166860038861390305316020579398429144038386189480114288127704265879389663380565983482028227028306457603727009698486364281,24531363009049563762536664273685630249930678743601473345646756718446749360580428942513295608401046098557387011967587876621178423418085640157221932880387840241062539585907115950101921176093340357598786734576629107604766098059509560466283874031181440387973563913507733219768477775440248994272649062713092103053254889978195382189063452107439308150731662099755008823588080977928436274879799764825887538020606485093127463680041134931480024720440536560752357773730443722294290727915022250638670491342013254556128005158924861347226548459626859027825687870031912255326425000561908947972742109607669897905187712585858898757609,25485947141960036800495601740358196336268148055632283852581334267632567089581351729697672659186150817483946028874699734841543360085445274610946793774678284845142698994270979141586640525566502581978495871744643885460820923876472270768798335817566781711314773489485670479771252073613546268231833675772584402239718946768734191504723089294480532048176604551680713541748910822012363078082926628834536634899606309021451196325472880525430322895659546741570135136047631868000597393506058143850364801619503318165686086392731222189995494225633540472226098357551602534472541794408218767265775850366289511546336446350346021282237,28927199961592509462716713052933904239681693743133323458100757563361525410670677174848159248824087482997906403441479071298957717300803186875289912194352025314864665854179681659546207985006650252942140268140510157106320849846175665072784539119695315757729095462689260495430463870222739869312073694346079553731438032339737072477343055235278557275309616493517920166164080693605271556685355062728635594753076381152709174590915306592547837200121302421882042327338955791916538647734045471143845013412592155994390976714634271247514800401724247381959070976404354024140134277339724455784411154537706347451440209596089260579033,23535119694477523772171748044630208131923028017288499693412795663706886468394056769073862998142660508474676105711590469240299300182072142961838102383606369450702330959729879893242049940029310408964084662077585876233411878169942718467081776763994846585950049650660912827541883992039288017630464390592382481783566823924532043610685633953209522603678841504652207254189077646669746333277037092923165111872444873598439940966325805716105630151638779643981500665152639984434504817034412086671254173379166038071662889121653550757613052820175939040916661555723756176613161036717523938816196299007092417098079561970714605061629,25950783447263038071689830748627856944354421735888733670277679971199180982562433131778324823115329151828330351648021612294094370722267669972986008148650808031918722892417970047773133521052009921040352676366121022268583455702531977371124075420219730460605780729481918672698487964603151661149289116143779941433746038933525309985350586367303720987487112290090195247099032317451409521767630753382551078895196505751734814139673689437231496521554705226938471456297964527299627857211400740652357956604961830754401147898467475649318148547949522809325493238323065337997986089837089904293908389128632840557033917922339991780941,18687318215344566555182740902454336428592486945614858718824661784376438207943593936740995084200358460316665071770681463630810552799361606949595415859491617650913620153502889285378972038135570359724693463761135116433672709408902151793979112715679738392883186006369274528906256519536716049908878346476950103274343269649895419042195937774381514132210454482820166758270346958078142742840173830940449171621914508101385104081796180941351697633772994457709351610367195330318869580666697900958479010130985251846923421963647318437209519428820003347978947799013079168765159404172743072632243706939700207639779907975142224264481,23171083837957860801722218699383337900446240030786871268841926233540016534306722256418697981846104677203759841627977766724259030420015851980511088229043403050763668171722648141766116654882525867416891436685059276174192868946692072206824573955678962077288068058032958478942750338128252470165933443869447212456023356245726416751721989152798706366691818486325734110680894776063318626260722657549472271184224308146689662638536101291469177898475337027531732897213355102104990685266062044811809193138366772764276162181116512200063463469172637189164324496242489479899844513951546392297220122152709400797483802836017803985829,31343857270714098359641269819793471247744609345771779520849062499842222751853736635128030263011267623933026775894009843057499037409921342064326054830123558338476304900840753732976691522721379417037190976719048367738172877422341695489954487825668390415147795382659776979019893183466662138357984500601883268994989224933833342232607751640920642550766835871191739404896219865225614116435580799461951708239551693029017567595268404121330207564314786956323833427106966279493560190075571199071036639702485305576334075428484139050116713328535867597124971991546934922511844853709001583656359284723717084806850145785405536911177,21157487427733991932564510362138492162446873104287756897983482468142107066461483198236006898398559574298806811271053872211924774119515269456039458266616445024300383802406544466004007569246261860103312006457776588799344222340569710165666518367783547810282003032927364478322210948885423703591814633243286070072754280297773344097615910071723846039979528910869815670975142743376293197136856592859188733532786144697373533341877747464753616005694543102759948736736802569257325101204596297349394258616025918915521692968786299735438817719576226325356937526633071323693338940757362235570825853130085312301448111119042363796113,20871071186633559430638470998115518791893553646420368867902204568431630269565952322291766136370093127894084798814242475456617969102595313205728405129168253735048454253508700456761223106599134617920774227174015124829476988377890165462875183814841087993485125686632410376362585538078467534668954228084080919739417042353928509644795709201564083148094079836306167650314513450129297783489119015593642581024870311297891618816623633162063381775243950740681581620150958717466968747843706102214690157071025611480716612116918336154774385432247274600064909320680551901771492165221773721500541614228617829117370166464409020423677,27392140202372139560911530190722295626016991167776777076251374167016701252229100335980281077736021393527993281083564981442696373714433732500818431355034758384480955155409564373832745499649881975977124862697809360957420580753883129965594447943274206109113518479198329538838000642865155652137973709624008263285324174285285129803357738290385065522262059795474318914719823768887144641758090777562619592046692917101170170722723905514971631800061092086777420826999668590868568525034863406950714560799453233548147404988580929389926995856613912328981176466707497680180241272497358147647189027922268738449537259460751070153621,27430458285560064975603737623690566617914765114564307656159371148918349993794669623672608540855772729568670170546349850367039352526804750358257162362490778729908291097260480430890476823722553654389178498566668573496227008913481934125881578164602723285712928871252207939941804689355173665470036039114037118963971589320342018774107583274314158608546842149328506685304690959566263296291871998398637364399822435359987280203416832697098234360106966146607816540746285266790106830402077656904149244001383199485864465648143588026246539864484902228828598281873311925831114015086450712030764672165915248196209070047454495085169,20958576649034914977467969756965874238364659071947031154211972997487243461262394795340258789930977809611131615831278870909123144191655991893039673506539165135637011485008482874021240555941833074286915507794874804218274011487390148860550531668300157069443584231888571925159473970195937554740938933226402208131160317818926784959057391389980505131685522579677264162724011263439981256344785140426649255485125637348357522582511064347878764724812085894898146080695383734063354384186594813474135513405234523117338489484424618032520881618202129068318264606277435174234229102947510033247339629069254901430086639327996737230861,25673210614761004254141737312053451635018146154378993341101985326929566270344015265597835170941666913606119762699769929117810862190840467973932188558749547474174367822508601158829928161219529997833862214002106486508027112865708012732033692783629855485545330232068552007350877531730729790772847199443436084419382562932662568511421420283558235026303217907581598166628555941188586096538364407553738314729036218493332920854764055946289816665260688813327844579390598566768671973314358968068459214729157676432241630688442073088681756498136814491310636028421098965714509622937097403466307515165856202257786336739101389349089,27062431131775909264962122516003720577621307700606752850978674545503762322327045712593154396229756047740198870458644425173406714147601486563284216353367017457813364860861671576291918230182938220436949095109018225648486931358793025228571750572403143070647269508389021099989559676856968002395615757641794675119572488971947338527037552287756390904188517823120698354616567162661395526975254448758091053074808436661809101512025437321837959528689272191238705432334775200965152419124620293521962173467865862080429867958898040527206234108561471429991355210673373595922083144022410446012714221026174220695995286555692560595981,26101397013404440939950108603288565551073409553356897393691328641679505760230621741096317929709636865532238670826796537369580597665138924272200816037026280780915781305836081579178356868109017075793286763556497902869947712856535743263321959264839901002581734771178344662509473227839268090064000382806059250315977679226653239225555007655990623485545590336008766750972486014525144801720879444739045959169483687885427725508164188831961197284042818573448808100923870021600896976125650269597381009562192855793477760166114366163011349461311146903814241124631772470784181050979028948750586113514587005436500903242591757553293,22437602225740742482465534898349205983133213895660550238212001804732032977697798637757435728694311659299624886491819969612531644822478331097020027346346025174540910579800256280214031292073085792970245723432769912206355626120327772649905875827091190500315669126429992547075064736037570537735332469814000462556933603719315364923773085086614780916637137068518726889173784282955430621992569759561719528189938429235007732504425905045067985337249988673084527372002559031400047880307427208848753891291386460253720313523072063965808016289774609282102972264056704286287440985034888143293816594327214769326166521224390393446693],"H1j":[16370062914568124684409954423220013634799944354368183091925443712820668316759795091290952642141219645055533606292548565759917746455430426634828957426644826424037530474618159463204943752577732484149675671820306363344833458247384057865310742915406677379586789735200748327711872632191061145184949312294612467345847214916930759229195852858849386686352293049987465485866498220082468131280135383612600619493426252446949294373638968518891137429993551161437309269629260378927918725566711632082553316166822070110359114229533322390061282040482480263995079579444943917107997110057038662405191417861817663789094790962966996587522,5792666313208572350705907594949414590804636531753541567087068453778543363077542142305947911768781865374122070750607847515026168979710170113788718287465368491981654823945993941924700096393523941715256095048825025361038086570514643251828085846380954791657627403414038681940866434304045104130214177360598208974353162505514170835103706979081795485247158115653501838694614859268884296606546104394637012764653804556264770973741677326601115655746125293204398034469241183574629519235451142797709676366285591723984602961129858687877266469708766607187000988412118886394000517917001485137799190522482532376333362935442751367745,14510201356793997359892744405553071944121896518459738320470368478827891282273167297002903311912769777071155241288755372185351193850631471716718530488323104261827697027757019895835360274243188719367049075501436153398857359555924247334095665350350441220453460409146684994664351725204034521761578947269005519140498383255606322844603919000682223940913285551513356600061526959181206093504072618536296265435830192715190515397064435874311583709516596584871136822289753837472532490128304199643440789002058080030111113389709287097531544417461853059085059819958060220257218705882557929843952675556987949500595639655528439052202,21994027187251658420706956116678134303619268245311594874227984400819404446053485122189884678892175444688722527594580466254690437593853064923544979570444911946308283663229116693350631331935027065689358169246815279257122823014594309629197723508317910829246255814111959552337648906237682616732913305786178221005434606679461852547394872592127050442856550471832240167936976142756988960345619830477159914332536955389792251800932867389016006568741180137556936582683389834385412181167798283357296952856933963222988284608097870458140102834156304710781157917296313315513842893014212063887070100364867105131178923785373561146050,9913834538682656788610829579771569556624609911472542281771864528920206652057360227595914694025069327892774241543292898072673087864732558768588752951687639831868499912733997907550450742144719953844448973554109420086839278177283587750852958353526057789017170152122423018814264172807655239353760715885145548388992476483731471865364270428702324445078126354834888878640191523880163270112743069852403951565444480363239177556818094412397417215136415082364220806171351930690164376890892251369372868624028034980680685551131786332553623705883769998271596791035214982761974622986462384695349153129828098712177799482890430520965,15464554656029222110560140639422624868539470020281691165975400448606613120973644407534365935510334228227263162749065335291017684520353168923100727746351715681760916446206803485743114757577242723665933043744987644589191843035807511863595701170012104449542518101585729174897996392297770818633483533801844500665798250501473521227123975005972911918718226524366806206633841675388137041998857549215313632375036761617534744890091542919972307048750757690677067439820416806817051344016166652866968067639055986253789416713411110543055264622333767216550525033482750914452894139691102713436731472281130988207399023815239852528906,12865788614422531768878171769038267076266208200249164027644212721909963715015912538682157638127903293282023380796412378159235431043017021949518573892381565899437599164703723050587964116914107635838030249942901605297513982608974593500166572552953195544515492725593747884602852061628830280449190167844572097543184555448060083835007200101317266753106995526429573085540857281097156159258319440414895242242967023265742835942344738184941128584859242462621792495405423196954908356769683815889035326257091875874458718611430785903143039161526479973858541524126951528796262613552089943663340076548393182371918642954593889432834,22194516202811321146792934079465991238594712937226367504517257988113211333368349800836879103947252405610400726941861867633710543721876626238467090611506859331575128297406631557631820626534381998686705168632059305910804423292984195597625141279765512951234238593649775486094326905655122386938572411401132183960062730500896105597665702000968846572795357957098192758080717128908256523579293163137417423771381528097786100281383788052729825837521137512379280310081930804124457815661946839040621474089357381345723789618079958299474682840114875558952249988571746058484000722421698440994062460208554903525444210802321182968014,2022329329707369117437055740094404969047484980501833952214571687130852032499620508208708908589247080600189902502365407836277381678968110704345539053376355432754797822267575827372488857681103447936055038802753292113151984972961755143427625893918328299356797405969999266508287378495280713821635381697950988327467894890827305051792226857027384943282520470216088404776455333696749084292781033264737672933515625823807581567568754027253581653106384383593181057349330506068884659072076739226363616897242406137010778123983315619151551375977509919335513557274798510437948502408760645678633359245877721858614575061700591393721,21638702445456858422878500352234793329413106731788942261751796025224145517964611169394617788434763506002565806620170893339110273126875286455095506459298086020278318872581385674653253080383128797980439557511752718258375238388481802546638936192461482797150514683008473213407715728694302414916863995043974867827876036585791719812271742103323384468954527534596036617313432433874380308883492321501736879178345427074046787174556058119038049586737477628511165980047288251497278209275581664775606335268904384984155864116270266473616061700061527150495070719210903471680082400487754898061609554671248760480063619759950744280907,20932768206097680299943959313782719928339866139959731166252002876096405653871733170637914957728294590217455322823662941811142831487382716004980657707514358763150029924714520812685697751484102120909926147024006189544048800446501267477163792293393919588659127430522309503845365000611784195390022621092266420671288509706282186373855655358090019051530324622779193478505342408854462043136412488215465955955421082850282626458587043647758494935495915329050933653468179762936320308005669155322055934931071589853638981754901315764484414249149121368560265856082417024956730272011998498550756243974623835494966366962683389714964,1365816667585940330490355905311774458514715320376130020996515573937571923987574784307504874484515899610747050162880466334946062918938639620242137371098595406424267003818882220942016240927776918797542668204898851284066695289242978919397682088055368818116198595348273129318762376760634794532531433638073562846988038755248023571028829475051882101071203979111269507596248527906600986677728810751499828436067766182628039345309355341295172437424660504415028913205507139100147921515616240146193076677157859750716375066201587358526136840334151066553547201088947345861316322897488659331106732575557394540428972305438213375814,5703448175361065536885380258834894924349694750000788978424055908887487214267289314410654116737467233333514153490994654420800717947051017245903088635547080581089891657444714373263301759995815635072257679749046151543038146531810310826817366207696928190231298874979984114964348460891792295427444943206125809938612729939665048974349693961742238426880015130297226114935093282566300228257419316454068258492582819117310017835605391570376283517758701794125467889060184214275911038527696714000045849219024045243597506828846590195831908281658454892131533791810760325400211405258812142759529523572815227489710851557846638137542,6412242406353564485058502679404605624009190790593030266854505291800626778702270387175472290319448965303250433574173375628339895100997329474893279692868549940279796264731093585208695625011062617868491258157215447275957107991387222489580499373804335870682739788296835432969262878909434810429803264643527538555130662379672012787064972208117475596665593916782896686056579449802576468324812730306559649834202797329883549294599723290402017221639617907711497472325019619452322282704828796586508386419927496666562295856731151167316262475184222145101211618002798513055006067228431048839763646095282531119806559583105533794495,12506213831497706601305625665856619892819919408470741644330076368184175310515183251146177621238406207206410185643656979107225155831507800032694528257147716038515158570256044209419514879851010106278924359714862316802415670557334433034976750101928783991744583819411313589306343712690219032368416678985323530251239318661396466801994308940886752046080901718450406046375904389766893043894196541576969928137946704159382893563356338387889137855413730990126192021766856444171515497507122402917749807424621383187173538906785892654668489198127757882153223185090960714890345630801099413698632285321494907662894187137142803150791,4340320683992731212484211057800765907410470847269768304639037529290512671362801376775768288042129836088810539204858832843247178308000345604701431226310915807542068901686097542648829915466491213307097734259829414895234796525272600474326857346693882386640793824277606043756669695477090601330450743232413209505539149906338741119182508496705355703793044044384724643256986023764031438551900073624644692938223394706241422593949897781383635695299729171084301185179708550600098470031089086344919627503113655735768701217637285566867914251954499504690075652022468818725559007318841314414541437592229352428286215595483845053638,11992304082547451264970842283976418853821301172975086658682116387543359417074268643442593212371361490968819128789238354995117145993279593426471336648259583293294202599078859260437992548184464009386152763827946804967424362206055435693041324410893236957405711025923054702040161696386453571055246924713260145964584750230359074777621444549946362450468684233332414284037283955916761049858000878784786268023500095161975906495439332741618288811384519280375489794382891880648564800750663555801045203854227681083222146920912455217541211811955477767635787030014152643158711960638325867606918508708678622347924499914937535267162,14695333877946105505101457937623624377562698430478247685331048607650568913937201633971254630714736577175024535322415669442798271475956496536083972430246897654017678266490639701809689918981250971730052435032797344400248226649579239038593902835536123498617918666329121083751772876090103853533035181736615043011673643017303605152279678650202512062770466963460251942403425462061196179491356440328364636048438335959347603428717042954470887883300891927932651483741068303515425618933688194621659816079976510221005329843899476003615861655015952079393164902282608831513778303062716347528913475870793908798463564832083549613643,6361624891550612817090909815430156259585522002511378700573226127309539860650523892977168943678195716824260472829831132024282728135758912178943090813161584286046605117495775878170654691942858452263763077967647297167266507685944611403131069163214134338169098006751105941940463654618427873599267528041887836331948305951890335742121311832653316741398094161561749334956600724220433324620401615490879450816097431926849306846384679126203940987154375373597650036103822699248044107851648286585837187416880739896147553285981829664828869063480707437325000260106329487862878699057790666160151383639198420965781777521408308842299,14948927140088320458060089936345715166494298631495857212773926944790409869483957673185876995292328343640197788589621807184518806705821872810447516194927678801617268846361533345460325613772855110322242304569109406957894646727384216069315325052819333705539766154972989576988248927288284161530384846682668538198851543196833452065614949748530253693700328342501577900059842225778082026779632761099626760985225309957646536118173500439351182747667021029407125807666947346322131872894915154624415940708414296769044070685030466034270063053482191494419465005898644603408406165778424189251953592599788015054586521957253320449350],"H2j":[9653640790649475435050720061635061544335995170813227062007808546473167610366804040613054457009646767723479128021709179513573358845884462519136809844401815066012655857973373223748942767836422506840658738556503260986697250346171921063441485400421533124068250604530993514803166454504801884882297625678932746326066096923436475087338628767636689481829832307623108408425959669915171224014581673426602770656342925462023157550194457295116217893440581116140543598050947318929500123378985275492765280831578803707538206440354119287576298034238031692982504012470196898579719660373199491817717767711160029710911173725338539566802,3578111860663702772408903345930659472256129868015762875031051677614699117364424442270785915866444756532836287879751640816575659073006676007210405202315496945346450727441553016187592354415793891110773645408147683476571812485850037389853330648238106038729525075512542830213816094853869971661719959033499816133612736102442725651388405183329714325258711655979055386253406319598230253658818466953001815116530962213661362799968355793928849708876651937113231862631691372187008559216884922263381652908899796744393080985272287681952842592674663712445064149288160957033524932550150413325097150870149209345404214256294282382085,2562656890570835296352376205216590519360952576353253013086344012422175466058176642832419040937235521572328705583208834436813588375562745525224328564354560731400723267162764903064018742843839822445601315505274421672289602485557719646504320106522113645676636456687468751723898215955665240524139836668877382766583475339565598073690853848639545227831264115164596396262772422415214665834769274554577301336288865874066248890243346947740610544045667761548206600923673948174739356732295677551749947395385332556227074205668024351973201205328576603362256016900712683688241615565934460363012498930253514800348031700419220337084,22298685304249156715841839507145325522077048988910268345524279200863227356693376151033928569980263444962701165900514081299580440300365488019578288962534096517468902687907593109404000193096117803450936780948162440311950526862133749440555125530434273281017640257175046682563772712146188162909037424635371282116160809281350332585723737917537784267577381007869736550494661878733387948458251550312048040279754696568539248453484809390032249968377837207868808482658171733689439009562188880777607125039187467565549644537971596666666932158369857160883674108786200103009448463903055431989786220430290067137368612432640074310237,5879475324785385886080118453628099122983640585548725925692818787221734315336181255707999432375105366554548265736590343628955580077952532008988837072008731794155978542038914506112861039350525606157951017828660604272526605818549217659336563240062224484914310161520768881507503977620229908361541865095980430141394883457555144123820008061398004875781145432780438239985999952863196781468403423593755390719871396312035325131303835880979744451815683310530516197085535308856850866798018523735074120787646575912319226234213646284739550604897450763442470406797690674949855848424274918433854009972115369882751833585035329242761,18385446607341413929216752317617998458160849115285197433981133872531647462267817752048089105851349541660795002685652456000086108157981979426453705134803682299691630928200421847304354380350114763235863451959398215394354125874494984531309790405988904217354164073819568789120760731377280912128364362051769093741704293517942028826498663326655241508795914202031051398724638536523567800437872676476082333745719105291491676453403521845621182329449421075607837301738332926110019535833222421409565228043580701032497151738816862657210572819375918881851411438625526045192015060739626198734346744421593858157488507552447503219157,1543023308301318791291636723263661645234407352972693347930324541592073282303070472660827743672362126204249434834670307886593868303926045601951702434485524524299146190187978789568968092026789881246345813079894138764374868096047892517784410005345559357208978859029831295378789933334638460830863012154730679683049737545160281582305039520027158141403805442275432519516975114987511502563484403828987844187725357101956491714139410763551382100998178318863295224089354110436171289236674317711473441156004575613857935802947903186710273135122934512388821226072049093290647716152026391828419205457729234939199662889356527012444,19612969155814925927900736991694631498815639143900750081709470615537990112217002271570654324774711607889679093067885009086620212727925361021546388555967618760690930383917718167829905900473725102007606380323545403188303409627969907029774876076466652636827981089598601596821629485556381455948439528301393466043329774616323471054547330305463639720319551756652789237846520745512886328152641158526571443916940675394167134193466655448590323552123565655514390433855054114283235652222186673800138041449545987929749641868001910765212175435331820335256408276886037716378072029444719891008048297796893611911457701948988529229282,16728597479991680407332164223276251930971882378040601546182090035388885277790620642130984559023085396113670088325023048100279567479347085329073035696608554975777409036805727779421519384442869313567486101701856985975948368091166211269762554257345698853374624187196304439193724792774291722910128170261256918581442838390388813651239625403911503915460141004046718650178671549506593787333200145941149923809156438433492770338609398675185696331933468246886804722117355530728325631706711888199439210221397335620762682713255422110226515677047306270190770133307509623731091673964502293431264279055367772707113499782043802219072,6959317283624626561280838810011851848606573383456333866356771642710009365943896928686358713606049305764133589953562485262421030190625379899341516940088176438653144375343629199857524649360799157617467464667207079997090732685762910728717721600193091207478294785009859545546272657408615665578978698966309579302786158306046780048259033960048367018506262121833776982527433736628482989970739839626561164331780819203300647377931749431379962789021848504353274218995997754499900534324222498419599756583548358913120017762065234354717544865856293340540081744252368993926137398125931373959455585431506453093937785431907339954440,11707820384786665143909181917722140695066077204138675859555940823963085499198625584153264077484611920625749300043796981737297557284495008476240804003977980903028035986014301427047695461308987163082644181568819427026377861293089760745032220979974314071873695748444473344481739404234865330820136242966321355292830007655295383627072182012764804101331409332152687101319613845603099019594628684448783718018158413013589965095889558760502141979036830513073469713570347578185733951700672935586145889495063730457422516713768592535269075934288536062686021973569079600458124449475763651523966025703378628943004868525425132768470,12680113365919882057574106113475868522128522384382601197321116786250024227710942753687346378669117549887826210207932325610070970266526443555090342822407043741408930676918514338947859254583933603158241276952467805479024344654828575004834480980171788527657050724406198542408746742354531228386476751247072501617975174749412587537766151828306153888252035411082379552917399551115964687725743020641384211728557413837203373250893065347048255589312756928959773947595990023044227966600250595372063312552514516053386563033360883348059069724261103859193470298590631028566611086928803669676829225666250863192855787196720603673760,9019657743968669607069997647539968262488442864840563257526073127843215521457164945521996034009113740811008633126128201485876365964359243077677187550395794512954090076458031575481109943534530172796807658845833964496790520042423061347000207701119849250007073432625973802817311058171823571086584900654526615124913824393095137876668486739795620319593113487319306758076868523633806281732675535191877729151172494277333403640038019691517232275137009983348569240826245496914996509643617684093222096189728055561573909735610063401084000594789204303691795045753669664876756897469727730211469836756344045393712182476806348262481,509727692658127329234819348282810282823358222955712460979035976368760532139665502509369544837059902335508770138210475703837249689840377266421270410968940058538125244069674567645496962345390684467242600183265156396927471901904730403435725549974213712745153254130090979413745442250230122176329142735628394058559735078808655502950813887104168441824680204081093532561399756958380811786995754253778833219233414597390819387529718886819478101169481249247654168746478268826094117295037052091370216680279456693786586815595643437522530315484348520350527079378100131478937805285900851443697897872168020710497135465069780807687,3842294189873253197555038084451026657880884971357471477404186912118522652991181539287485996470843289095459960588932515934990566949413638625169611068786524327230092661471599333492933504858312443510340452825109814219748343465626968500133039743956522352452046474898271016421645025612565409422475581907506677274527441400119913285024497410632467771786023570373229380492185234340140113773065511943229164821322784643171443642045254567266530741214826934397811463635644370547054062567012016231228876473774669826378368361454200858389911185989849447377758286974943747417740672897265471383352127822433439855380640722238771424561,12605457156020973444763168611522695283402376793806466187139735133742095649198553225011255516233464381926302993187553632508703365300132776800901755737316341235931477791227746456204649162573568121476427289406145613748980339685673661511024577823438911510307584137593479079190723698666793670318162798116104492476114229973922338166221669934104784402698512349426984473431614385866651807327515058966935011035923319124790759086336194395000632944700277782112868323483780168144642250558671981757792078139349701070563555668082796938131863328410412160150471825619049694173807371104601644825755844313657731729068891163705563867555,18221138784555811053296911040444811422299569221370698341523745856400091281377839778678778328149110548534138934160836481393838346908432982920562116626677959686450236292050295531261923474882738697393510842972966810110218027601675376030586402861098487543863740705626110087204717386977952136809165092530095562928623301371629208844732733664526090007002304626939446606391205626126192870615394522174649688440887870385705569710809581575204639778805466412903927058799148697158251622260213645585723159916754663707237605872275846686566820885362722073881904277317597403167380835907876296870877478221646920284310430371934404822311,12694464409184116198175216134705674117698495589897734763290223249700439697747213221960704240817308024376618649511257185410755720163743943692791263666036558979570909072667619923266653682384882259644954119285287063471541002032435823410204495631358202104734018269537402171761572193134509812396214919229814690930600798504895496564687656801956575973479011431776352638782289114699743527186781919502658003154674450714069197242726393985114420810547684173494018605147976810102913734546162705259030658206284298418521349062777115509219489672039075093329236647292016824670535351144784388483525751068225542810044999850751665224074,4201765615355271720665237538919680402664127861292891404309962354268106831635826650331041297039291644925592311983403700464576600435518882156854904159089879201301912105368413055078865795374091914623189759593456721300785707753873135853357294442043908826331857106210726005526370024055346666586491341046296314798619327898858072624823009991437876242325624019938022318176060332738994176297193724805935694309014605422020909137014676945305249645201662101488974241605863532571828450201507584679493905057922784236072997143238879363168245889469038437561181276242698369654938178116001428367837409133015026021079614840533626761027,5693818583095067032554302348404689889827513405370432124730856324552577938645345928545249455102636900381970277642590696482249653647276002965730520652542065397111012479589269283364878130676178205766673654461574816233876555267291293343730094421360715866449358521574582941335437947403997555554148186986038285554629922609604751054748762347310142603219823359220130919495866316927224981350998367935679597793982889611172206443879512553133682522147111994374985808397513270886689704297115982752710085691562031953231724109895260045500479387280386873351701423764105530811712645875225583048344423503433093456461313617037044573606],"BigXj":[{"Coords":[31961961449149592290215619337342545369164998201385135329342844666166714363705,64636392625998908156106021830673034903148364934246785109426074897879798496695]},{"Coords":[13561027879868215202586968035768135752207534764402067848160241312364043370282,31683215740694624076579960720726613640416539517460242899883851320256877874663]},{"Coords":[102970472861055393328233354777448191839076263179087526130927097177204776801806,19849778771794568183958877322544789075545226949228544528619329359950140265115]},{"Coords":[8366486354279759555693815735694831293559828965602250556327317858912116678471,24456250444071880675953816335612932507033433175255559522554349078047625549678]},{"Coords":[93126246885046599201299142306317944158536766260090154798797491446571717586613,101632074177392193573512178573083324222329391048269493231849116848088552218375]},{"Coords":[45944473181199785374833853975473363930687909609574532965286298616052742734642,49106561873713078177518155217967815241790729328033604070651886838013799968339]},{"Coords":[88807289702586806295763026580879412609419986472794654189482668002118698433065,66889255218792877467551818840857264643456782872798377645941824720058728156412]},{"Coords":[45745777770010867130655637386117976632006388263133845103488205463444756286557,58413618959379828248439575493421719547880693819703454359788283537541749522854]},{"Coords":[14931705718614911512649079486924798218629483414127465950786381421646404878840,70853895869521315016717813866703398949051565204254795550601147911581008651495]},{"Coords":[31702825468512650039750289022997764002837389172468049717092331147393818254752,90704921170203464181329063311130512192295590723462840980995045506481351030148]},{"Coords":[108133277897421036808605843118854356978565880360693563552498521263092161957794,33994893650793696043114830343063091347849012751372498052809673503667071259863]},{"Coords":[13603746174106309213882605187834221055267478293724779491981408043396477605150,47502402322605913877968636451206238145707201411072573659819652572960084227380]},{"Coords":[21962637032374642863765173367353663611071785709723940819398260699915154728736,65876190623954751874122457014542214494068664571689464338691288646258987627994]},{"Coords":[8139291295258406047002639746372064115101651961499427493344848502049438028449,13643120656693319356484507306610353728697986968072320539867387334577150577786]},{"Coords":[871083651129542234211830236854985246175496411885064575219875767816674532739,100904963893789549224657775356884044157291453214379932308347421012612568685620]},{"Coords":[98028745019433069815621229762947408124245116227553507407780733119772046992520,60367568163137055112812282822118701471566204774343904929920219271364583776122]},{"Coords":[37332951852807254347441974643993866127041633128152922228434313154811023954744,56046459898819968566785812285970001512876757161864884424831574905585289505077]},{"Coords":[11223798616675111197150792218010453124916879614948521844981845491687409376646,70914747125199464172751182264377339815163078089055967502760766110580370145293]},{"Coords":[62949410140974969962342726366577125978516456835571210444108422984760191628326,55668150354406094271153240357261264601037343235231498038021007487545647055721]},{"Coords":[7611358883569187056502001665501128526153865541559158134839099203014115911991,87617845479447207941483995353359860120852817257735643485765526341493112597509]}],"PaillierPKs":[{"N":25922769748919102678415192880711636156565612427571550685296776086119205445525743826557545692077634738129321690187868055737306626420419536394422682260657759329710259802294458956279773225258250955469954464209933873407784778802101265717840506851919529598154066919091078766953942869622551929743069097967501533345363150709912011028449270819442207860620552088412428865900112120786495620291333470644949767300948329241775121748888220588626655915013364614554467190860190736954650967874940702908395331234632114014125372505065096924932509595285205788545338407476139436404463823043865599023326570565049384032977060875483209339089},{"N":23930233287283899271771864413305422456138957780711273892670074191715648409585503033095084345383391541524625291548041741990557564183855401706042293717552023237439032182637019639795919249455653535670614575331737610284863144094845900714497635996654401300216924764570210541950557336240993007183309433063094227377624710274228010652758134777897718742178998545079447283838099902510469006366469099975469096355736757507201973304413688395278990349533350163833514531655073848517781662614171483003731680841330633223244205178982328422170273570503713081265847261211618499950287557687314846590616484106774575999250148317390509484773},{"N":23804125140052077689856128298352557083678652474445385365228110453726681237860799979845611556170894187976654278582576364089033396218674226546868809651353049956675922595541689542576794678062495339422204984765419389268325283682512000995221750412104207394441438666051694475950049774094896290106430636216894744335784327798634247450687264677393229214665686649911456587168142148024558282134024448427550922487022680890892554782651383972136386958126051377715096556862662265886688077689941967157694195467190297477735450118736949849327358586935699405848605265912107169200547464609552395233560924746135866463084686118233592906569},{"N":27732731445242071631661957657712700411367090291795241371771965432140171981887215839890743735562516245338158767440902124645306227526755834590210240211292920385793070069156192085968959067158127765511651425539136016999745924428061397793021945121990437538890398656832618417715425504589084090095239114803460787199036351739230987513003864153861252195944069425337294669643857426654756086277471320443733998616523518289821541295617435513033264977202437153989318832642208143170451837926277566396048774049270318848738844338850668187024045715008196311523744942555689097435377598835544336914580911633671909176827168167136470690349},{"N":24540078122494262833119917930091872139739129939617606686122284549157786865278292966087938309454800165081094474899057524752572006230843959997841521536274236615511587750039832014979332539924539915807860222967109230298738770371871063759834296194059907031260324597353713442284471130560805946122495294807423458083635025189319558646442212459161798625793784738344309603016513355951936699928410805609866016648244631951643648288242475041729105749202516848107495430809184564037582943457286768883109270231510808158554549441157152513493684930416951758705877335895250913277012541968048511163986915876606316087458297080987346429881},{"N":23068407873896187320610408658036992760323120237076281539139801143529656493030091268390954927616119732305210576479622679524747880246080257702939099128994719527894439722828526117361648236913823027514544862046712398251734066527697676237348724465158893599560473200351530224245041596340220963683429881340553208409699594299261181212989221107530971303522686320513564226387471374456547377291192484997988606654540899634665450162274963086331783789860908282085692296248300574631527561763641974772756130570734735297575564567681595756096492735284720794891113064512997620639494646662790341453069978107064092657029168133504185408209},{"N":23360724885676198523522179321150194474267520026708517257764444663025119039638464657158724624502663558960702469988070676415660798425916276572290617437202837750858738892140118363926690520956187802097449221385283612203760207950600195667994976400493623569930090999021596112553157677485561299069991215207522767873493631366488446241092099654975621689119086509041077742510323711222260189730828492291459421830791540197321337933505867430138627984859014648102694909985043765241359798051875756951108870386862501048751981261038842763679815348130953290890391440850806363449637432840586263665690832227799688631446932015796916844537},{"N":25572476038149983843824758627743773292157542015669155545898739136432359227667585235619146413408812705275735125477228881724887114180658812229689479785083051083069428146070988730518675361280497876215801249358736365876007532614766347833762716625529381645528767502376159614744663698030295284120589012492759402983796882103200388651743368106596836536656368370930363045639317610411594882976032564820311800297421945366798108347221120736308176815503106682839506833524058020959093518528060465861144447540812579976237229589574562145541453749754749768478003306870660214131556451734687719631047077200787163529663274266186702479657},{"N":22679491499676926565249058751269701914370165376325885490706178594236435587374452393672919867257890172146499232592163563478749644823548404207107209183759523050603597049541204457028947474998785130219644182203008088877544305999771879137962239304258371157231174473491797491114277983084811723764080082851754276992307408859865524067180300336894890064430698022388669278921501809909740064260359142339540812296913591956784925745003590749703099702370645409020780887758983568638652737043891478141095930983089074418014910987946825193073588506986312390146214478478314600989393866198945700334073322066709926152728868061176019551541},{"N":23556951187256713732039305973238937631620385080790804249029259279472926645248156172448686117325741554381537031072742207487366612992119859269685828207319515666102872111546619607137952974660084980511684952594879342586512197525409799350424247192892012163769784591542546626323584978204193899561072157767856334488337110957680579926475975853118319141371431419486620931003438350760541975587261961199260033262263106014958269750801811225868080849204705441859105664948039653986722714354940941410686784948916936213417318953574086609821961649007609305029496977916873440356977063491030736996785241653241262171162950673703965399497},{"N":25874692591276389940909836821933328634340387691760211719857424847912710687202655208899136151842265948895002254373718724704209721944297143062448179072459504026936041473424765480639475272190837266572978737262449980766383982513621598580661341958135147571122513631091491976191663115339463730624237942100977649124658328431032849468551008597071378488661492324861414296280692846039598797857140808360770338990664282941023358641770157837364612463858095463039043959476170224596463891235213200808423306885708639894810932553685021558027739945539621344374072593175483199343233185955959027063970833388545231587659014590298587532269},{"N":21093015027631740022404443614096248522776233243516651444497036871175728958780883068858760981924585432192986275662870128643941927265524238598903061299795143929360395711020210769824764384718922898979318706735662563638859312024117764087176816929100038836825165997745175858151391747552772916358596447916581236137266690055236206686429983418915105841208302705945838725058954761546083763560226985859597874827308926656876419352353487645531847757035757295720869824004015071252605178819856102760159009139713396577974830023684477215548955933062314225333947463154019890073099705030557644025494887348484646782031863159015194484417},{"N":25298229297396047246415163429032546137139715727559844391184017906947304850232141234045323209407471473714145852636924268416866274482603754141415609592221706725085407059971638122009913495964543366119323417218834638913881087432600102264473788528537095668778412431377856067113698729914757144153775835786313302871273438949909936263664301138604696985912220658568672102041006541952444982579070062275651333990266954050520365848194152044834016212084441028573044037025009772616765171118784908205140185837844772749992941537017860827787097838183799078426827486346760690086948873222139803967157701952297751113063507286886770253809},{"N":27142202438632787162126599492908508783692765215748557510315014134009044742375492012422395905792294364201376442258017321008269356413320158807932162865700040957744157446176162447390298999320446062496836729102114052332958615915307193716216287036998207324413342337908047902088094382893405585342830460716335897834006040665407645344104524772021574862180664953364488173834491400964015536206179143781066229852877159880337660767454184922616386524557470530917791514588890903382115919687896218697262329973216887300329083882938499296413225108475327673886217363092593458630101782913564451822536507792690041998191978031482893873661},{"N":24506900410165079432913879286738242981557799447704277709132563752281068885918764244597103897934251933625444124974453530023693766922128717584028552755128051187819589410024704161034785358235535327695240184593017832269373629062497324651346586921679971074785452914954524453931920025017233873766495332551435302696547239605953737313669053194482788679487077465271167890491044626060923037626210805459313170671202877996680415217025953459280403666974895608025476083146334864242075064839862857242870450430867849337473211116054259839281123892458791925377357496234454799948092884977174468592367921171996109259120511593665944142269},{"N":26694966767987840469949338865344547117483340362831650227215482575365406012636774021468648984974992022743149425563486792907591668251920735101399223711217247824036472514130615393737405150133409306326610912172081216216331513707092964488994949651842782342704418212963772590286378010081225253538245220740244206602153540135126863052186543426616293649543741875882042173380956119737322204906042367710990417544800462728321639324791151406955584010061660628304199783826293959912579926890912970052339895938137461119473504729752401310289221600181057106776643382986556174592325963163204522372078262520351770361427042538592078722253},{"N":28161406783438289776782541515550232234219338732182263528677255680862818571394539837092411279908340595856411618560352096707955778113841586575489526111758509944691006867155143609674220650793817498419172979829028602046249597147507621299153669762040424244341554256616377217119563525915851719009321686306763607672801085326365691030132510560260181669852932393003570340516931927914922146799899039434467722922041925474101320996856938035131446584298134298675299397155375412990353784006913691603024110559796744887732721945933471868150638226543773483734660294313186275340618342717882057017678734282256333631978096376709630195493},{"N":30290385531723706663194155723402482345164001328034021287910161482488063429892351584916277391109894294446801833020074687889362652138426091460224301803948089690115686705682426193759251182110547546779254274419781083851169949275087832187538168815749507922889270386625094587688358817642053715412200458038741309360104964334706289126542952674791148655002683650712544232003067953586569445443104249283623297733191839471659254940888571771772980381177972566220724293577306168494057111878161156955456998298372496716136324267059071403030493623531599851487444134766104137251811774500492630476212318493040236485031236879687941684761},{"N":21891762840438596060416034930044842446937758373617708235288562429502315391645647044939378215035677465574183685957522821315454029977571728750605988329881847569313802549118091978526315133726370633285214423147938264418314863217805659876561184725718735591303337902948467582966199323804114988231963307083517180657041313131586070203747291724798899561367507615511932716092324516747320587928666160741969956121773346301706809405054989477031949248189136343469258532041255092588255241987397760849320759799542054627513230744643622791455964220513319415609245199516100422991698341556744298439022451385568791478794837569530013904689},{"N":25360934335416714794999313991057897528923718232366653339706494176825638906694689891746545886915964196582662458688535283322287088397853865709093712398485753916163063777301385991907720781358632265326870516346689492128442283774600103789825609570294923480202759046857115137927714980847316960609776972337028789163184648676367675625026306027140091761009104192786329465543720196130052658782412428125321357130192023653185727111578488774341366834046035305712205910649341950409228079277410881842097288924692206421126356254520404943323384573694119449632324221088061482676921038116252201661916622983158849603411299895152156469481}],"ECDSAPub":{"Coords":[92492306118178589821640584737240636977398594678247616965910942704932180187323,27954057508764275913470910100133573369328128015811591924683199269013496685879]}} \ No newline at end of file diff --git a/test/_ecdsa_fixtures/keygen_data_7.json b/test/_ecdsa_fixtures/keygen_data_7.json new file mode 100644 index 00000000..d958f9c8 --- /dev/null +++ b/test/_ecdsa_fixtures/keygen_data_7.json @@ -0,0 +1 @@ +{"PaillierSK":{"N":25572476038149983843824758627743773292157542015669155545898739136432359227667585235619146413408812705275735125477228881724887114180658812229689479785083051083069428146070988730518675361280497876215801249358736365876007532614766347833762716625529381645528767502376159614744663698030295284120589012492759402983796882103200388651743368106596836536656368370930363045639317610411594882976032564820311800297421945366798108347221120736308176815503106682839506833524058020959093518528060465861144447540812579976237229589574562145541453749754749768478003306870660214131556451734687719631047077200787163529663274266186702479657,"LambdaN":12786238019074991921912379313871886646078771007834577772949369568216179613833792617809573206704406352637867562738614440862443557090329406114844739892541525541534714073035494365259337680640248938107900624679368182938003766307383173916881358312764690822764383751188079807372331849015147642060294506246379701491738143924473027740122249019043589630043396897878768824422067831857346441504927813877267780058237012953782829365205269828188416196427570620770341117847591638769623160642714517842460276874995138740189058422420613555196453469443907496157642226375611585351188282484097791699303549487636524244740519380040363272938,"PhiN":25572476038149983843824758627743773292157542015669155545898739136432359227667585235619146413408812705275735125477228881724887114180658812229689479785083051083069428146070988730518675361280497876215801249358736365876007532614766347833762716625529381645528767502376159614744663698030295284120589012492759402983476287848946055480244498038087179260086793795757537648844135663714692883009855627754535560116474025907565658730410539656376832392855141241540682235695183277539246321285429035684920553749990277480378116844841227110392906938887814992315284452751223170702376564968195583398607098975273048489481038760080726545876},"NTildei":25950783447263038071689830748627856944354421735888733670277679971199180982562433131778324823115329151828330351648021612294094370722267669972986008148650808031918722892417970047773133521052009921040352676366121022268583455702531977371124075420219730460605780729481918672698487964603151661149289116143779941433746038933525309985350586367303720987487112290090195247099032317451409521767630753382551078895196505751734814139673689437231496521554705226938471456297964527299627857211400740652357956604961830754401147898467475649318148547949522809325493238323065337997986089837089904293908389128632840557033917922339991780941,"H1i":22194516202811321146792934079465991238594712937226367504517257988113211333368349800836879103947252405610400726941861867633710543721876626238467090611506859331575128297406631557631820626534381998686705168632059305910804423292984195597625141279765512951234238593649775486094326905655122386938572411401132183960062730500896105597665702000968846572795357957098192758080717128908256523579293163137417423771381528097786100281383788052729825837521137512379280310081930804124457815661946839040621474089357381345723789618079958299474682840114875558952249988571746058484000722421698440994062460208554903525444210802321182968014,"H2i":19612969155814925927900736991694631498815639143900750081709470615537990112217002271570654324774711607889679093067885009086620212727925361021546388555967618760690930383917718167829905900473725102007606380323545403188303409627969907029774876076466652636827981089598601596821629485556381455948439528301393466043329774616323471054547330305463639720319551756652789237846520745512886328152641158526571443916940675394167134193466655448590323552123565655514390433855054114283235652222186673800138041449545987929749641868001910765212175435331820335256408276886037716378072029444719891008048297796893611911457701948988529229282,"Alpha":19990755244023618635359232671314515302506079693185096651731569410973204874491827193856467717709419338172125286866696898627307522111042558109380148255898612903034654076713654186041453991604749559116203811769248672222165745208404899171692998844805734183173596540808564246825998236327814446843152451361513008383423371646765783505227931768158584378973679402282127223963434329164056129060406253233013156426181516654008495828203244179996906507910485672451928812246949419064281693541934053426107021924212860837108349659008449893699610033896736249708018638428568565627063149829549396362917442151208518848297126628839593040445,"Beta":3511535883172441184987926846321269810532810542368257939265286065824562708782941730720365326738878333102314401656473602575798301203654068014249094319075236083348324166791683577480859365553322390565875654903883931225455936020716829033812894086539685899573062839651057185199280182143760904335730479451871484812691303904049557078767317552508152119366348733398290067084953743785960049718457691475878053081612442454253047012031859225699130444972899303218263568363597220780521466879941809518181288336843036945476848983838619816125800706213034593140656093842894511672431898197326485005888673413720998370193083093916830940453,"P":88500673141758600301101053564792151983941891395335883013448958580541566116451410232232212135214603160279116820486177593815958316010526475303942994969289896668210083030943595771124098917651546791981517891133698656648477328939990365313345133565022211747343306215599034934549459961566228427201910921660228883063,"Q":73306740293646112965252355560544677852933474563387983272747043021021013323293011584916048433480330104808732540738619911216677249013082043705569103187060823181814149658181446121326050877106684589000215415738707343392293682933173632051890982334038049707320943355797575532900492439350146183937621658767991960641,"Xi":2911165431543908290076240550563675429370484787424635775683044819436537722410,"ShareID":99910913777216787121500121711080713911605201308487494263101624819470958719081,"Ks":[99910913777216787121500121711080713911605201308487494263101624819470958719074,99910913777216787121500121711080713911605201308487494263101624819470958719075,99910913777216787121500121711080713911605201308487494263101624819470958719076,99910913777216787121500121711080713911605201308487494263101624819470958719077,99910913777216787121500121711080713911605201308487494263101624819470958719078,99910913777216787121500121711080713911605201308487494263101624819470958719079,99910913777216787121500121711080713911605201308487494263101624819470958719080,99910913777216787121500121711080713911605201308487494263101624819470958719081,99910913777216787121500121711080713911605201308487494263101624819470958719082,99910913777216787121500121711080713911605201308487494263101624819470958719083,99910913777216787121500121711080713911605201308487494263101624819470958719084,99910913777216787121500121711080713911605201308487494263101624819470958719085,99910913777216787121500121711080713911605201308487494263101624819470958719086,99910913777216787121500121711080713911605201308487494263101624819470958719087,99910913777216787121500121711080713911605201308487494263101624819470958719088,99910913777216787121500121711080713911605201308487494263101624819470958719089,99910913777216787121500121711080713911605201308487494263101624819470958719090,99910913777216787121500121711080713911605201308487494263101624819470958719091,99910913777216787121500121711080713911605201308487494263101624819470958719092,99910913777216787121500121711080713911605201308487494263101624819470958719093],"NTildej":[20539613942852364097890357541124859329931817468396278432713468646303963073659662742703665137736867247354367523800071318544570641421320510992705137876681425752810096966415479528824625129989063402576946505816887222102561441464103605308386975248012283762854115939987945603503283072741824666735245204091384515192454349252950007899626081034649919068642018312817079235168086885705851677572363277983076857313399016624874649811334825694862350059490166759704819411086564625186038339099281295128259092469609539775245598320922394808913338827772001777479207381548603315272620456484970681705115865233047669675602308688791376160589,19461028678249357721701139019984545699598216253588699892259672060166427273458875608319855785678884811755179389274380053495578644060470229307987007292965327985966772681212738091909180148035785695413643708212165777295662698493311553457174395686873169155288384255670661532430410131045712913078128214239252258473814281283319061613409102410606683119900924722782015902970301519339718368508022893331969649513655635811522767629123667744907556474126774472529158147258343482417188228144974952598132795041139358631852141986745214674779692377899411672630850213748161088638857089501019216868292821676374914063004957409393293909513,23815206664659393600414832732918591362081086959256855451108811883313935088830793690110550688160373127903180149093000695761674277348327575728255258492470452704258920461298225437641154249481888087192237143947805411796310656512191138629555279666557122333244803756577286887501632314162770617970064401783626962319950524158923845138939649762251756759762119774585338772559055859463599094869423262313306255644927649977403492926253217608523813644206820059309357940964633363130901166057002430269910921882664166860038861390305316020579398429144038386189480114288127704265879389663380565983482028227028306457603727009698486364281,24531363009049563762536664273685630249930678743601473345646756718446749360580428942513295608401046098557387011967587876621178423418085640157221932880387840241062539585907115950101921176093340357598786734576629107604766098059509560466283874031181440387973563913507733219768477775440248994272649062713092103053254889978195382189063452107439308150731662099755008823588080977928436274879799764825887538020606485093127463680041134931480024720440536560752357773730443722294290727915022250638670491342013254556128005158924861347226548459626859027825687870031912255326425000561908947972742109607669897905187712585858898757609,25485947141960036800495601740358196336268148055632283852581334267632567089581351729697672659186150817483946028874699734841543360085445274610946793774678284845142698994270979141586640525566502581978495871744643885460820923876472270768798335817566781711314773489485670479771252073613546268231833675772584402239718946768734191504723089294480532048176604551680713541748910822012363078082926628834536634899606309021451196325472880525430322895659546741570135136047631868000597393506058143850364801619503318165686086392731222189995494225633540472226098357551602534472541794408218767265775850366289511546336446350346021282237,28927199961592509462716713052933904239681693743133323458100757563361525410670677174848159248824087482997906403441479071298957717300803186875289912194352025314864665854179681659546207985006650252942140268140510157106320849846175665072784539119695315757729095462689260495430463870222739869312073694346079553731438032339737072477343055235278557275309616493517920166164080693605271556685355062728635594753076381152709174590915306592547837200121302421882042327338955791916538647734045471143845013412592155994390976714634271247514800401724247381959070976404354024140134277339724455784411154537706347451440209596089260579033,23535119694477523772171748044630208131923028017288499693412795663706886468394056769073862998142660508474676105711590469240299300182072142961838102383606369450702330959729879893242049940029310408964084662077585876233411878169942718467081776763994846585950049650660912827541883992039288017630464390592382481783566823924532043610685633953209522603678841504652207254189077646669746333277037092923165111872444873598439940966325805716105630151638779643981500665152639984434504817034412086671254173379166038071662889121653550757613052820175939040916661555723756176613161036717523938816196299007092417098079561970714605061629,25950783447263038071689830748627856944354421735888733670277679971199180982562433131778324823115329151828330351648021612294094370722267669972986008148650808031918722892417970047773133521052009921040352676366121022268583455702531977371124075420219730460605780729481918672698487964603151661149289116143779941433746038933525309985350586367303720987487112290090195247099032317451409521767630753382551078895196505751734814139673689437231496521554705226938471456297964527299627857211400740652357956604961830754401147898467475649318148547949522809325493238323065337997986089837089904293908389128632840557033917922339991780941,18687318215344566555182740902454336428592486945614858718824661784376438207943593936740995084200358460316665071770681463630810552799361606949595415859491617650913620153502889285378972038135570359724693463761135116433672709408902151793979112715679738392883186006369274528906256519536716049908878346476950103274343269649895419042195937774381514132210454482820166758270346958078142742840173830940449171621914508101385104081796180941351697633772994457709351610367195330318869580666697900958479010130985251846923421963647318437209519428820003347978947799013079168765159404172743072632243706939700207639779907975142224264481,23171083837957860801722218699383337900446240030786871268841926233540016534306722256418697981846104677203759841627977766724259030420015851980511088229043403050763668171722648141766116654882525867416891436685059276174192868946692072206824573955678962077288068058032958478942750338128252470165933443869447212456023356245726416751721989152798706366691818486325734110680894776063318626260722657549472271184224308146689662638536101291469177898475337027531732897213355102104990685266062044811809193138366772764276162181116512200063463469172637189164324496242489479899844513951546392297220122152709400797483802836017803985829,31343857270714098359641269819793471247744609345771779520849062499842222751853736635128030263011267623933026775894009843057499037409921342064326054830123558338476304900840753732976691522721379417037190976719048367738172877422341695489954487825668390415147795382659776979019893183466662138357984500601883268994989224933833342232607751640920642550766835871191739404896219865225614116435580799461951708239551693029017567595268404121330207564314786956323833427106966279493560190075571199071036639702485305576334075428484139050116713328535867597124971991546934922511844853709001583656359284723717084806850145785405536911177,21157487427733991932564510362138492162446873104287756897983482468142107066461483198236006898398559574298806811271053872211924774119515269456039458266616445024300383802406544466004007569246261860103312006457776588799344222340569710165666518367783547810282003032927364478322210948885423703591814633243286070072754280297773344097615910071723846039979528910869815670975142743376293197136856592859188733532786144697373533341877747464753616005694543102759948736736802569257325101204596297349394258616025918915521692968786299735438817719576226325356937526633071323693338940757362235570825853130085312301448111119042363796113,20871071186633559430638470998115518791893553646420368867902204568431630269565952322291766136370093127894084798814242475456617969102595313205728405129168253735048454253508700456761223106599134617920774227174015124829476988377890165462875183814841087993485125686632410376362585538078467534668954228084080919739417042353928509644795709201564083148094079836306167650314513450129297783489119015593642581024870311297891618816623633162063381775243950740681581620150958717466968747843706102214690157071025611480716612116918336154774385432247274600064909320680551901771492165221773721500541614228617829117370166464409020423677,27392140202372139560911530190722295626016991167776777076251374167016701252229100335980281077736021393527993281083564981442696373714433732500818431355034758384480955155409564373832745499649881975977124862697809360957420580753883129965594447943274206109113518479198329538838000642865155652137973709624008263285324174285285129803357738290385065522262059795474318914719823768887144641758090777562619592046692917101170170722723905514971631800061092086777420826999668590868568525034863406950714560799453233548147404988580929389926995856613912328981176466707497680180241272497358147647189027922268738449537259460751070153621,27430458285560064975603737623690566617914765114564307656159371148918349993794669623672608540855772729568670170546349850367039352526804750358257162362490778729908291097260480430890476823722553654389178498566668573496227008913481934125881578164602723285712928871252207939941804689355173665470036039114037118963971589320342018774107583274314158608546842149328506685304690959566263296291871998398637364399822435359987280203416832697098234360106966146607816540746285266790106830402077656904149244001383199485864465648143588026246539864484902228828598281873311925831114015086450712030764672165915248196209070047454495085169,20958576649034914977467969756965874238364659071947031154211972997487243461262394795340258789930977809611131615831278870909123144191655991893039673506539165135637011485008482874021240555941833074286915507794874804218274011487390148860550531668300157069443584231888571925159473970195937554740938933226402208131160317818926784959057391389980505131685522579677264162724011263439981256344785140426649255485125637348357522582511064347878764724812085894898146080695383734063354384186594813474135513405234523117338489484424618032520881618202129068318264606277435174234229102947510033247339629069254901430086639327996737230861,25673210614761004254141737312053451635018146154378993341101985326929566270344015265597835170941666913606119762699769929117810862190840467973932188558749547474174367822508601158829928161219529997833862214002106486508027112865708012732033692783629855485545330232068552007350877531730729790772847199443436084419382562932662568511421420283558235026303217907581598166628555941188586096538364407553738314729036218493332920854764055946289816665260688813327844579390598566768671973314358968068459214729157676432241630688442073088681756498136814491310636028421098965714509622937097403466307515165856202257786336739101389349089,27062431131775909264962122516003720577621307700606752850978674545503762322327045712593154396229756047740198870458644425173406714147601486563284216353367017457813364860861671576291918230182938220436949095109018225648486931358793025228571750572403143070647269508389021099989559676856968002395615757641794675119572488971947338527037552287756390904188517823120698354616567162661395526975254448758091053074808436661809101512025437321837959528689272191238705432334775200965152419124620293521962173467865862080429867958898040527206234108561471429991355210673373595922083144022410446012714221026174220695995286555692560595981,26101397013404440939950108603288565551073409553356897393691328641679505760230621741096317929709636865532238670826796537369580597665138924272200816037026280780915781305836081579178356868109017075793286763556497902869947712856535743263321959264839901002581734771178344662509473227839268090064000382806059250315977679226653239225555007655990623485545590336008766750972486014525144801720879444739045959169483687885427725508164188831961197284042818573448808100923870021600896976125650269597381009562192855793477760166114366163011349461311146903814241124631772470784181050979028948750586113514587005436500903242591757553293,22437602225740742482465534898349205983133213895660550238212001804732032977697798637757435728694311659299624886491819969612531644822478331097020027346346025174540910579800256280214031292073085792970245723432769912206355626120327772649905875827091190500315669126429992547075064736037570537735332469814000462556933603719315364923773085086614780916637137068518726889173784282955430621992569759561719528189938429235007732504425905045067985337249988673084527372002559031400047880307427208848753891291386460253720313523072063965808016289774609282102972264056704286287440985034888143293816594327214769326166521224390393446693],"H1j":[16370062914568124684409954423220013634799944354368183091925443712820668316759795091290952642141219645055533606292548565759917746455430426634828957426644826424037530474618159463204943752577732484149675671820306363344833458247384057865310742915406677379586789735200748327711872632191061145184949312294612467345847214916930759229195852858849386686352293049987465485866498220082468131280135383612600619493426252446949294373638968518891137429993551161437309269629260378927918725566711632082553316166822070110359114229533322390061282040482480263995079579444943917107997110057038662405191417861817663789094790962966996587522,5792666313208572350705907594949414590804636531753541567087068453778543363077542142305947911768781865374122070750607847515026168979710170113788718287465368491981654823945993941924700096393523941715256095048825025361038086570514643251828085846380954791657627403414038681940866434304045104130214177360598208974353162505514170835103706979081795485247158115653501838694614859268884296606546104394637012764653804556264770973741677326601115655746125293204398034469241183574629519235451142797709676366285591723984602961129858687877266469708766607187000988412118886394000517917001485137799190522482532376333362935442751367745,14510201356793997359892744405553071944121896518459738320470368478827891282273167297002903311912769777071155241288755372185351193850631471716718530488323104261827697027757019895835360274243188719367049075501436153398857359555924247334095665350350441220453460409146684994664351725204034521761578947269005519140498383255606322844603919000682223940913285551513356600061526959181206093504072618536296265435830192715190515397064435874311583709516596584871136822289753837472532490128304199643440789002058080030111113389709287097531544417461853059085059819958060220257218705882557929843952675556987949500595639655528439052202,21994027187251658420706956116678134303619268245311594874227984400819404446053485122189884678892175444688722527594580466254690437593853064923544979570444911946308283663229116693350631331935027065689358169246815279257122823014594309629197723508317910829246255814111959552337648906237682616732913305786178221005434606679461852547394872592127050442856550471832240167936976142756988960345619830477159914332536955389792251800932867389016006568741180137556936582683389834385412181167798283357296952856933963222988284608097870458140102834156304710781157917296313315513842893014212063887070100364867105131178923785373561146050,9913834538682656788610829579771569556624609911472542281771864528920206652057360227595914694025069327892774241543292898072673087864732558768588752951687639831868499912733997907550450742144719953844448973554109420086839278177283587750852958353526057789017170152122423018814264172807655239353760715885145548388992476483731471865364270428702324445078126354834888878640191523880163270112743069852403951565444480363239177556818094412397417215136415082364220806171351930690164376890892251369372868624028034980680685551131786332553623705883769998271596791035214982761974622986462384695349153129828098712177799482890430520965,15464554656029222110560140639422624868539470020281691165975400448606613120973644407534365935510334228227263162749065335291017684520353168923100727746351715681760916446206803485743114757577242723665933043744987644589191843035807511863595701170012104449542518101585729174897996392297770818633483533801844500665798250501473521227123975005972911918718226524366806206633841675388137041998857549215313632375036761617534744890091542919972307048750757690677067439820416806817051344016166652866968067639055986253789416713411110543055264622333767216550525033482750914452894139691102713436731472281130988207399023815239852528906,12865788614422531768878171769038267076266208200249164027644212721909963715015912538682157638127903293282023380796412378159235431043017021949518573892381565899437599164703723050587964116914107635838030249942901605297513982608974593500166572552953195544515492725593747884602852061628830280449190167844572097543184555448060083835007200101317266753106995526429573085540857281097156159258319440414895242242967023265742835942344738184941128584859242462621792495405423196954908356769683815889035326257091875874458718611430785903143039161526479973858541524126951528796262613552089943663340076548393182371918642954593889432834,22194516202811321146792934079465991238594712937226367504517257988113211333368349800836879103947252405610400726941861867633710543721876626238467090611506859331575128297406631557631820626534381998686705168632059305910804423292984195597625141279765512951234238593649775486094326905655122386938572411401132183960062730500896105597665702000968846572795357957098192758080717128908256523579293163137417423771381528097786100281383788052729825837521137512379280310081930804124457815661946839040621474089357381345723789618079958299474682840114875558952249988571746058484000722421698440994062460208554903525444210802321182968014,2022329329707369117437055740094404969047484980501833952214571687130852032499620508208708908589247080600189902502365407836277381678968110704345539053376355432754797822267575827372488857681103447936055038802753292113151984972961755143427625893918328299356797405969999266508287378495280713821635381697950988327467894890827305051792226857027384943282520470216088404776455333696749084292781033264737672933515625823807581567568754027253581653106384383593181057349330506068884659072076739226363616897242406137010778123983315619151551375977509919335513557274798510437948502408760645678633359245877721858614575061700591393721,21638702445456858422878500352234793329413106731788942261751796025224145517964611169394617788434763506002565806620170893339110273126875286455095506459298086020278318872581385674653253080383128797980439557511752718258375238388481802546638936192461482797150514683008473213407715728694302414916863995043974867827876036585791719812271742103323384468954527534596036617313432433874380308883492321501736879178345427074046787174556058119038049586737477628511165980047288251497278209275581664775606335268904384984155864116270266473616061700061527150495070719210903471680082400487754898061609554671248760480063619759950744280907,20932768206097680299943959313782719928339866139959731166252002876096405653871733170637914957728294590217455322823662941811142831487382716004980657707514358763150029924714520812685697751484102120909926147024006189544048800446501267477163792293393919588659127430522309503845365000611784195390022621092266420671288509706282186373855655358090019051530324622779193478505342408854462043136412488215465955955421082850282626458587043647758494935495915329050933653468179762936320308005669155322055934931071589853638981754901315764484414249149121368560265856082417024956730272011998498550756243974623835494966366962683389714964,1365816667585940330490355905311774458514715320376130020996515573937571923987574784307504874484515899610747050162880466334946062918938639620242137371098595406424267003818882220942016240927776918797542668204898851284066695289242978919397682088055368818116198595348273129318762376760634794532531433638073562846988038755248023571028829475051882101071203979111269507596248527906600986677728810751499828436067766182628039345309355341295172437424660504415028913205507139100147921515616240146193076677157859750716375066201587358526136840334151066553547201088947345861316322897488659331106732575557394540428972305438213375814,5703448175361065536885380258834894924349694750000788978424055908887487214267289314410654116737467233333514153490994654420800717947051017245903088635547080581089891657444714373263301759995815635072257679749046151543038146531810310826817366207696928190231298874979984114964348460891792295427444943206125809938612729939665048974349693961742238426880015130297226114935093282566300228257419316454068258492582819117310017835605391570376283517758701794125467889060184214275911038527696714000045849219024045243597506828846590195831908281658454892131533791810760325400211405258812142759529523572815227489710851557846638137542,6412242406353564485058502679404605624009190790593030266854505291800626778702270387175472290319448965303250433574173375628339895100997329474893279692868549940279796264731093585208695625011062617868491258157215447275957107991387222489580499373804335870682739788296835432969262878909434810429803264643527538555130662379672012787064972208117475596665593916782896686056579449802576468324812730306559649834202797329883549294599723290402017221639617907711497472325019619452322282704828796586508386419927496666562295856731151167316262475184222145101211618002798513055006067228431048839763646095282531119806559583105533794495,12506213831497706601305625665856619892819919408470741644330076368184175310515183251146177621238406207206410185643656979107225155831507800032694528257147716038515158570256044209419514879851010106278924359714862316802415670557334433034976750101928783991744583819411313589306343712690219032368416678985323530251239318661396466801994308940886752046080901718450406046375904389766893043894196541576969928137946704159382893563356338387889137855413730990126192021766856444171515497507122402917749807424621383187173538906785892654668489198127757882153223185090960714890345630801099413698632285321494907662894187137142803150791,4340320683992731212484211057800765907410470847269768304639037529290512671362801376775768288042129836088810539204858832843247178308000345604701431226310915807542068901686097542648829915466491213307097734259829414895234796525272600474326857346693882386640793824277606043756669695477090601330450743232413209505539149906338741119182508496705355703793044044384724643256986023764031438551900073624644692938223394706241422593949897781383635695299729171084301185179708550600098470031089086344919627503113655735768701217637285566867914251954499504690075652022468818725559007318841314414541437592229352428286215595483845053638,11992304082547451264970842283976418853821301172975086658682116387543359417074268643442593212371361490968819128789238354995117145993279593426471336648259583293294202599078859260437992548184464009386152763827946804967424362206055435693041324410893236957405711025923054702040161696386453571055246924713260145964584750230359074777621444549946362450468684233332414284037283955916761049858000878784786268023500095161975906495439332741618288811384519280375489794382891880648564800750663555801045203854227681083222146920912455217541211811955477767635787030014152643158711960638325867606918508708678622347924499914937535267162,14695333877946105505101457937623624377562698430478247685331048607650568913937201633971254630714736577175024535322415669442798271475956496536083972430246897654017678266490639701809689918981250971730052435032797344400248226649579239038593902835536123498617918666329121083751772876090103853533035181736615043011673643017303605152279678650202512062770466963460251942403425462061196179491356440328364636048438335959347603428717042954470887883300891927932651483741068303515425618933688194621659816079976510221005329843899476003615861655015952079393164902282608831513778303062716347528913475870793908798463564832083549613643,6361624891550612817090909815430156259585522002511378700573226127309539860650523892977168943678195716824260472829831132024282728135758912178943090813161584286046605117495775878170654691942858452263763077967647297167266507685944611403131069163214134338169098006751105941940463654618427873599267528041887836331948305951890335742121311832653316741398094161561749334956600724220433324620401615490879450816097431926849306846384679126203940987154375373597650036103822699248044107851648286585837187416880739896147553285981829664828869063480707437325000260106329487862878699057790666160151383639198420965781777521408308842299,14948927140088320458060089936345715166494298631495857212773926944790409869483957673185876995292328343640197788589621807184518806705821872810447516194927678801617268846361533345460325613772855110322242304569109406957894646727384216069315325052819333705539766154972989576988248927288284161530384846682668538198851543196833452065614949748530253693700328342501577900059842225778082026779632761099626760985225309957646536118173500439351182747667021029407125807666947346322131872894915154624415940708414296769044070685030466034270063053482191494419465005898644603408406165778424189251953592599788015054586521957253320449350],"H2j":[9653640790649475435050720061635061544335995170813227062007808546473167610366804040613054457009646767723479128021709179513573358845884462519136809844401815066012655857973373223748942767836422506840658738556503260986697250346171921063441485400421533124068250604530993514803166454504801884882297625678932746326066096923436475087338628767636689481829832307623108408425959669915171224014581673426602770656342925462023157550194457295116217893440581116140543598050947318929500123378985275492765280831578803707538206440354119287576298034238031692982504012470196898579719660373199491817717767711160029710911173725338539566802,3578111860663702772408903345930659472256129868015762875031051677614699117364424442270785915866444756532836287879751640816575659073006676007210405202315496945346450727441553016187592354415793891110773645408147683476571812485850037389853330648238106038729525075512542830213816094853869971661719959033499816133612736102442725651388405183329714325258711655979055386253406319598230253658818466953001815116530962213661362799968355793928849708876651937113231862631691372187008559216884922263381652908899796744393080985272287681952842592674663712445064149288160957033524932550150413325097150870149209345404214256294282382085,2562656890570835296352376205216590519360952576353253013086344012422175466058176642832419040937235521572328705583208834436813588375562745525224328564354560731400723267162764903064018742843839822445601315505274421672289602485557719646504320106522113645676636456687468751723898215955665240524139836668877382766583475339565598073690853848639545227831264115164596396262772422415214665834769274554577301336288865874066248890243346947740610544045667761548206600923673948174739356732295677551749947395385332556227074205668024351973201205328576603362256016900712683688241615565934460363012498930253514800348031700419220337084,22298685304249156715841839507145325522077048988910268345524279200863227356693376151033928569980263444962701165900514081299580440300365488019578288962534096517468902687907593109404000193096117803450936780948162440311950526862133749440555125530434273281017640257175046682563772712146188162909037424635371282116160809281350332585723737917537784267577381007869736550494661878733387948458251550312048040279754696568539248453484809390032249968377837207868808482658171733689439009562188880777607125039187467565549644537971596666666932158369857160883674108786200103009448463903055431989786220430290067137368612432640074310237,5879475324785385886080118453628099122983640585548725925692818787221734315336181255707999432375105366554548265736590343628955580077952532008988837072008731794155978542038914506112861039350525606157951017828660604272526605818549217659336563240062224484914310161520768881507503977620229908361541865095980430141394883457555144123820008061398004875781145432780438239985999952863196781468403423593755390719871396312035325131303835880979744451815683310530516197085535308856850866798018523735074120787646575912319226234213646284739550604897450763442470406797690674949855848424274918433854009972115369882751833585035329242761,18385446607341413929216752317617998458160849115285197433981133872531647462267817752048089105851349541660795002685652456000086108157981979426453705134803682299691630928200421847304354380350114763235863451959398215394354125874494984531309790405988904217354164073819568789120760731377280912128364362051769093741704293517942028826498663326655241508795914202031051398724638536523567800437872676476082333745719105291491676453403521845621182329449421075607837301738332926110019535833222421409565228043580701032497151738816862657210572819375918881851411438625526045192015060739626198734346744421593858157488507552447503219157,1543023308301318791291636723263661645234407352972693347930324541592073282303070472660827743672362126204249434834670307886593868303926045601951702434485524524299146190187978789568968092026789881246345813079894138764374868096047892517784410005345559357208978859029831295378789933334638460830863012154730679683049737545160281582305039520027158141403805442275432519516975114987511502563484403828987844187725357101956491714139410763551382100998178318863295224089354110436171289236674317711473441156004575613857935802947903186710273135122934512388821226072049093290647716152026391828419205457729234939199662889356527012444,19612969155814925927900736991694631498815639143900750081709470615537990112217002271570654324774711607889679093067885009086620212727925361021546388555967618760690930383917718167829905900473725102007606380323545403188303409627969907029774876076466652636827981089598601596821629485556381455948439528301393466043329774616323471054547330305463639720319551756652789237846520745512886328152641158526571443916940675394167134193466655448590323552123565655514390433855054114283235652222186673800138041449545987929749641868001910765212175435331820335256408276886037716378072029444719891008048297796893611911457701948988529229282,16728597479991680407332164223276251930971882378040601546182090035388885277790620642130984559023085396113670088325023048100279567479347085329073035696608554975777409036805727779421519384442869313567486101701856985975948368091166211269762554257345698853374624187196304439193724792774291722910128170261256918581442838390388813651239625403911503915460141004046718650178671549506593787333200145941149923809156438433492770338609398675185696331933468246886804722117355530728325631706711888199439210221397335620762682713255422110226515677047306270190770133307509623731091673964502293431264279055367772707113499782043802219072,6959317283624626561280838810011851848606573383456333866356771642710009365943896928686358713606049305764133589953562485262421030190625379899341516940088176438653144375343629199857524649360799157617467464667207079997090732685762910728717721600193091207478294785009859545546272657408615665578978698966309579302786158306046780048259033960048367018506262121833776982527433736628482989970739839626561164331780819203300647377931749431379962789021848504353274218995997754499900534324222498419599756583548358913120017762065234354717544865856293340540081744252368993926137398125931373959455585431506453093937785431907339954440,11707820384786665143909181917722140695066077204138675859555940823963085499198625584153264077484611920625749300043796981737297557284495008476240804003977980903028035986014301427047695461308987163082644181568819427026377861293089760745032220979974314071873695748444473344481739404234865330820136242966321355292830007655295383627072182012764804101331409332152687101319613845603099019594628684448783718018158413013589965095889558760502141979036830513073469713570347578185733951700672935586145889495063730457422516713768592535269075934288536062686021973569079600458124449475763651523966025703378628943004868525425132768470,12680113365919882057574106113475868522128522384382601197321116786250024227710942753687346378669117549887826210207932325610070970266526443555090342822407043741408930676918514338947859254583933603158241276952467805479024344654828575004834480980171788527657050724406198542408746742354531228386476751247072501617975174749412587537766151828306153888252035411082379552917399551115964687725743020641384211728557413837203373250893065347048255589312756928959773947595990023044227966600250595372063312552514516053386563033360883348059069724261103859193470298590631028566611086928803669676829225666250863192855787196720603673760,9019657743968669607069997647539968262488442864840563257526073127843215521457164945521996034009113740811008633126128201485876365964359243077677187550395794512954090076458031575481109943534530172796807658845833964496790520042423061347000207701119849250007073432625973802817311058171823571086584900654526615124913824393095137876668486739795620319593113487319306758076868523633806281732675535191877729151172494277333403640038019691517232275137009983348569240826245496914996509643617684093222096189728055561573909735610063401084000594789204303691795045753669664876756897469727730211469836756344045393712182476806348262481,509727692658127329234819348282810282823358222955712460979035976368760532139665502509369544837059902335508770138210475703837249689840377266421270410968940058538125244069674567645496962345390684467242600183265156396927471901904730403435725549974213712745153254130090979413745442250230122176329142735628394058559735078808655502950813887104168441824680204081093532561399756958380811786995754253778833219233414597390819387529718886819478101169481249247654168746478268826094117295037052091370216680279456693786586815595643437522530315484348520350527079378100131478937805285900851443697897872168020710497135465069780807687,3842294189873253197555038084451026657880884971357471477404186912118522652991181539287485996470843289095459960588932515934990566949413638625169611068786524327230092661471599333492933504858312443510340452825109814219748343465626968500133039743956522352452046474898271016421645025612565409422475581907506677274527441400119913285024497410632467771786023570373229380492185234340140113773065511943229164821322784643171443642045254567266530741214826934397811463635644370547054062567012016231228876473774669826378368361454200858389911185989849447377758286974943747417740672897265471383352127822433439855380640722238771424561,12605457156020973444763168611522695283402376793806466187139735133742095649198553225011255516233464381926302993187553632508703365300132776800901755737316341235931477791227746456204649162573568121476427289406145613748980339685673661511024577823438911510307584137593479079190723698666793670318162798116104492476114229973922338166221669934104784402698512349426984473431614385866651807327515058966935011035923319124790759086336194395000632944700277782112868323483780168144642250558671981757792078139349701070563555668082796938131863328410412160150471825619049694173807371104601644825755844313657731729068891163705563867555,18221138784555811053296911040444811422299569221370698341523745856400091281377839778678778328149110548534138934160836481393838346908432982920562116626677959686450236292050295531261923474882738697393510842972966810110218027601675376030586402861098487543863740705626110087204717386977952136809165092530095562928623301371629208844732733664526090007002304626939446606391205626126192870615394522174649688440887870385705569710809581575204639778805466412903927058799148697158251622260213645585723159916754663707237605872275846686566820885362722073881904277317597403167380835907876296870877478221646920284310430371934404822311,12694464409184116198175216134705674117698495589897734763290223249700439697747213221960704240817308024376618649511257185410755720163743943692791263666036558979570909072667619923266653682384882259644954119285287063471541002032435823410204495631358202104734018269537402171761572193134509812396214919229814690930600798504895496564687656801956575973479011431776352638782289114699743527186781919502658003154674450714069197242726393985114420810547684173494018605147976810102913734546162705259030658206284298418521349062777115509219489672039075093329236647292016824670535351144784388483525751068225542810044999850751665224074,4201765615355271720665237538919680402664127861292891404309962354268106831635826650331041297039291644925592311983403700464576600435518882156854904159089879201301912105368413055078865795374091914623189759593456721300785707753873135853357294442043908826331857106210726005526370024055346666586491341046296314798619327898858072624823009991437876242325624019938022318176060332738994176297193724805935694309014605422020909137014676945305249645201662101488974241605863532571828450201507584679493905057922784236072997143238879363168245889469038437561181276242698369654938178116001428367837409133015026021079614840533626761027,5693818583095067032554302348404689889827513405370432124730856324552577938645345928545249455102636900381970277642590696482249653647276002965730520652542065397111012479589269283364878130676178205766673654461574816233876555267291293343730094421360715866449358521574582941335437947403997555554148186986038285554629922609604751054748762347310142603219823359220130919495866316927224981350998367935679597793982889611172206443879512553133682522147111994374985808397513270886689704297115982752710085691562031953231724109895260045500479387280386873351701423764105530811712645875225583048344423503433093456461313617037044573606],"BigXj":[{"Coords":[31961961449149592290215619337342545369164998201385135329342844666166714363705,64636392625998908156106021830673034903148364934246785109426074897879798496695]},{"Coords":[13561027879868215202586968035768135752207534764402067848160241312364043370282,31683215740694624076579960720726613640416539517460242899883851320256877874663]},{"Coords":[102970472861055393328233354777448191839076263179087526130927097177204776801806,19849778771794568183958877322544789075545226949228544528619329359950140265115]},{"Coords":[8366486354279759555693815735694831293559828965602250556327317858912116678471,24456250444071880675953816335612932507033433175255559522554349078047625549678]},{"Coords":[93126246885046599201299142306317944158536766260090154798797491446571717586613,101632074177392193573512178573083324222329391048269493231849116848088552218375]},{"Coords":[45944473181199785374833853975473363930687909609574532965286298616052742734642,49106561873713078177518155217967815241790729328033604070651886838013799968339]},{"Coords":[88807289702586806295763026580879412609419986472794654189482668002118698433065,66889255218792877467551818840857264643456782872798377645941824720058728156412]},{"Coords":[45745777770010867130655637386117976632006388263133845103488205463444756286557,58413618959379828248439575493421719547880693819703454359788283537541749522854]},{"Coords":[14931705718614911512649079486924798218629483414127465950786381421646404878840,70853895869521315016717813866703398949051565204254795550601147911581008651495]},{"Coords":[31702825468512650039750289022997764002837389172468049717092331147393818254752,90704921170203464181329063311130512192295590723462840980995045506481351030148]},{"Coords":[108133277897421036808605843118854356978565880360693563552498521263092161957794,33994893650793696043114830343063091347849012751372498052809673503667071259863]},{"Coords":[13603746174106309213882605187834221055267478293724779491981408043396477605150,47502402322605913877968636451206238145707201411072573659819652572960084227380]},{"Coords":[21962637032374642863765173367353663611071785709723940819398260699915154728736,65876190623954751874122457014542214494068664571689464338691288646258987627994]},{"Coords":[8139291295258406047002639746372064115101651961499427493344848502049438028449,13643120656693319356484507306610353728697986968072320539867387334577150577786]},{"Coords":[871083651129542234211830236854985246175496411885064575219875767816674532739,100904963893789549224657775356884044157291453214379932308347421012612568685620]},{"Coords":[98028745019433069815621229762947408124245116227553507407780733119772046992520,60367568163137055112812282822118701471566204774343904929920219271364583776122]},{"Coords":[37332951852807254347441974643993866127041633128152922228434313154811023954744,56046459898819968566785812285970001512876757161864884424831574905585289505077]},{"Coords":[11223798616675111197150792218010453124916879614948521844981845491687409376646,70914747125199464172751182264377339815163078089055967502760766110580370145293]},{"Coords":[62949410140974969962342726366577125978516456835571210444108422984760191628326,55668150354406094271153240357261264601037343235231498038021007487545647055721]},{"Coords":[7611358883569187056502001665501128526153865541559158134839099203014115911991,87617845479447207941483995353359860120852817257735643485765526341493112597509]}],"PaillierPKs":[{"N":25922769748919102678415192880711636156565612427571550685296776086119205445525743826557545692077634738129321690187868055737306626420419536394422682260657759329710259802294458956279773225258250955469954464209933873407784778802101265717840506851919529598154066919091078766953942869622551929743069097967501533345363150709912011028449270819442207860620552088412428865900112120786495620291333470644949767300948329241775121748888220588626655915013364614554467190860190736954650967874940702908395331234632114014125372505065096924932509595285205788545338407476139436404463823043865599023326570565049384032977060875483209339089},{"N":23930233287283899271771864413305422456138957780711273892670074191715648409585503033095084345383391541524625291548041741990557564183855401706042293717552023237439032182637019639795919249455653535670614575331737610284863144094845900714497635996654401300216924764570210541950557336240993007183309433063094227377624710274228010652758134777897718742178998545079447283838099902510469006366469099975469096355736757507201973304413688395278990349533350163833514531655073848517781662614171483003731680841330633223244205178982328422170273570503713081265847261211618499950287557687314846590616484106774575999250148317390509484773},{"N":23804125140052077689856128298352557083678652474445385365228110453726681237860799979845611556170894187976654278582576364089033396218674226546868809651353049956675922595541689542576794678062495339422204984765419389268325283682512000995221750412104207394441438666051694475950049774094896290106430636216894744335784327798634247450687264677393229214665686649911456587168142148024558282134024448427550922487022680890892554782651383972136386958126051377715096556862662265886688077689941967157694195467190297477735450118736949849327358586935699405848605265912107169200547464609552395233560924746135866463084686118233592906569},{"N":27732731445242071631661957657712700411367090291795241371771965432140171981887215839890743735562516245338158767440902124645306227526755834590210240211292920385793070069156192085968959067158127765511651425539136016999745924428061397793021945121990437538890398656832618417715425504589084090095239114803460787199036351739230987513003864153861252195944069425337294669643857426654756086277471320443733998616523518289821541295617435513033264977202437153989318832642208143170451837926277566396048774049270318848738844338850668187024045715008196311523744942555689097435377598835544336914580911633671909176827168167136470690349},{"N":24540078122494262833119917930091872139739129939617606686122284549157786865278292966087938309454800165081094474899057524752572006230843959997841521536274236615511587750039832014979332539924539915807860222967109230298738770371871063759834296194059907031260324597353713442284471130560805946122495294807423458083635025189319558646442212459161798625793784738344309603016513355951936699928410805609866016648244631951643648288242475041729105749202516848107495430809184564037582943457286768883109270231510808158554549441157152513493684930416951758705877335895250913277012541968048511163986915876606316087458297080987346429881},{"N":23068407873896187320610408658036992760323120237076281539139801143529656493030091268390954927616119732305210576479622679524747880246080257702939099128994719527894439722828526117361648236913823027514544862046712398251734066527697676237348724465158893599560473200351530224245041596340220963683429881340553208409699594299261181212989221107530971303522686320513564226387471374456547377291192484997988606654540899634665450162274963086331783789860908282085692296248300574631527561763641974772756130570734735297575564567681595756096492735284720794891113064512997620639494646662790341453069978107064092657029168133504185408209},{"N":23360724885676198523522179321150194474267520026708517257764444663025119039638464657158724624502663558960702469988070676415660798425916276572290617437202837750858738892140118363926690520956187802097449221385283612203760207950600195667994976400493623569930090999021596112553157677485561299069991215207522767873493631366488446241092099654975621689119086509041077742510323711222260189730828492291459421830791540197321337933505867430138627984859014648102694909985043765241359798051875756951108870386862501048751981261038842763679815348130953290890391440850806363449637432840586263665690832227799688631446932015796916844537},{"N":25572476038149983843824758627743773292157542015669155545898739136432359227667585235619146413408812705275735125477228881724887114180658812229689479785083051083069428146070988730518675361280497876215801249358736365876007532614766347833762716625529381645528767502376159614744663698030295284120589012492759402983796882103200388651743368106596836536656368370930363045639317610411594882976032564820311800297421945366798108347221120736308176815503106682839506833524058020959093518528060465861144447540812579976237229589574562145541453749754749768478003306870660214131556451734687719631047077200787163529663274266186702479657},{"N":22679491499676926565249058751269701914370165376325885490706178594236435587374452393672919867257890172146499232592163563478749644823548404207107209183759523050603597049541204457028947474998785130219644182203008088877544305999771879137962239304258371157231174473491797491114277983084811723764080082851754276992307408859865524067180300336894890064430698022388669278921501809909740064260359142339540812296913591956784925745003590749703099702370645409020780887758983568638652737043891478141095930983089074418014910987946825193073588506986312390146214478478314600989393866198945700334073322066709926152728868061176019551541},{"N":23556951187256713732039305973238937631620385080790804249029259279472926645248156172448686117325741554381537031072742207487366612992119859269685828207319515666102872111546619607137952974660084980511684952594879342586512197525409799350424247192892012163769784591542546626323584978204193899561072157767856334488337110957680579926475975853118319141371431419486620931003438350760541975587261961199260033262263106014958269750801811225868080849204705441859105664948039653986722714354940941410686784948916936213417318953574086609821961649007609305029496977916873440356977063491030736996785241653241262171162950673703965399497},{"N":25874692591276389940909836821933328634340387691760211719857424847912710687202655208899136151842265948895002254373718724704209721944297143062448179072459504026936041473424765480639475272190837266572978737262449980766383982513621598580661341958135147571122513631091491976191663115339463730624237942100977649124658328431032849468551008597071378488661492324861414296280692846039598797857140808360770338990664282941023358641770157837364612463858095463039043959476170224596463891235213200808423306885708639894810932553685021558027739945539621344374072593175483199343233185955959027063970833388545231587659014590298587532269},{"N":21093015027631740022404443614096248522776233243516651444497036871175728958780883068858760981924585432192986275662870128643941927265524238598903061299795143929360395711020210769824764384718922898979318706735662563638859312024117764087176816929100038836825165997745175858151391747552772916358596447916581236137266690055236206686429983418915105841208302705945838725058954761546083763560226985859597874827308926656876419352353487645531847757035757295720869824004015071252605178819856102760159009139713396577974830023684477215548955933062314225333947463154019890073099705030557644025494887348484646782031863159015194484417},{"N":25298229297396047246415163429032546137139715727559844391184017906947304850232141234045323209407471473714145852636924268416866274482603754141415609592221706725085407059971638122009913495964543366119323417218834638913881087432600102264473788528537095668778412431377856067113698729914757144153775835786313302871273438949909936263664301138604696985912220658568672102041006541952444982579070062275651333990266954050520365848194152044834016212084441028573044037025009772616765171118784908205140185837844772749992941537017860827787097838183799078426827486346760690086948873222139803967157701952297751113063507286886770253809},{"N":27142202438632787162126599492908508783692765215748557510315014134009044742375492012422395905792294364201376442258017321008269356413320158807932162865700040957744157446176162447390298999320446062496836729102114052332958615915307193716216287036998207324413342337908047902088094382893405585342830460716335897834006040665407645344104524772021574862180664953364488173834491400964015536206179143781066229852877159880337660767454184922616386524557470530917791514588890903382115919687896218697262329973216887300329083882938499296413225108475327673886217363092593458630101782913564451822536507792690041998191978031482893873661},{"N":24506900410165079432913879286738242981557799447704277709132563752281068885918764244597103897934251933625444124974453530023693766922128717584028552755128051187819589410024704161034785358235535327695240184593017832269373629062497324651346586921679971074785452914954524453931920025017233873766495332551435302696547239605953737313669053194482788679487077465271167890491044626060923037626210805459313170671202877996680415217025953459280403666974895608025476083146334864242075064839862857242870450430867849337473211116054259839281123892458791925377357496234454799948092884977174468592367921171996109259120511593665944142269},{"N":26694966767987840469949338865344547117483340362831650227215482575365406012636774021468648984974992022743149425563486792907591668251920735101399223711217247824036472514130615393737405150133409306326610912172081216216331513707092964488994949651842782342704418212963772590286378010081225253538245220740244206602153540135126863052186543426616293649543741875882042173380956119737322204906042367710990417544800462728321639324791151406955584010061660628304199783826293959912579926890912970052339895938137461119473504729752401310289221600181057106776643382986556174592325963163204522372078262520351770361427042538592078722253},{"N":28161406783438289776782541515550232234219338732182263528677255680862818571394539837092411279908340595856411618560352096707955778113841586575489526111758509944691006867155143609674220650793817498419172979829028602046249597147507621299153669762040424244341554256616377217119563525915851719009321686306763607672801085326365691030132510560260181669852932393003570340516931927914922146799899039434467722922041925474101320996856938035131446584298134298675299397155375412990353784006913691603024110559796744887732721945933471868150638226543773483734660294313186275340618342717882057017678734282256333631978096376709630195493},{"N":30290385531723706663194155723402482345164001328034021287910161482488063429892351584916277391109894294446801833020074687889362652138426091460224301803948089690115686705682426193759251182110547546779254274419781083851169949275087832187538168815749507922889270386625094587688358817642053715412200458038741309360104964334706289126542952674791148655002683650712544232003067953586569445443104249283623297733191839471659254940888571771772980381177972566220724293577306168494057111878161156955456998298372496716136324267059071403030493623531599851487444134766104137251811774500492630476212318493040236485031236879687941684761},{"N":21891762840438596060416034930044842446937758373617708235288562429502315391645647044939378215035677465574183685957522821315454029977571728750605988329881847569313802549118091978526315133726370633285214423147938264418314863217805659876561184725718735591303337902948467582966199323804114988231963307083517180657041313131586070203747291724798899561367507615511932716092324516747320587928666160741969956121773346301706809405054989477031949248189136343469258532041255092588255241987397760849320759799542054627513230744643622791455964220513319415609245199516100422991698341556744298439022451385568791478794837569530013904689},{"N":25360934335416714794999313991057897528923718232366653339706494176825638906694689891746545886915964196582662458688535283322287088397853865709093712398485753916163063777301385991907720781358632265326870516346689492128442283774600103789825609570294923480202759046857115137927714980847316960609776972337028789163184648676367675625026306027140091761009104192786329465543720196130052658782412428125321357130192023653185727111578488774341366834046035305712205910649341950409228079277410881842097288924692206421126356254520404943323384573694119449632324221088061482676921038116252201661916622983158849603411299895152156469481}],"ECDSAPub":{"Coords":[92492306118178589821640584737240636977398594678247616965910942704932180187323,27954057508764275913470910100133573369328128015811591924683199269013496685879]}} \ No newline at end of file diff --git a/test/_ecdsa_fixtures/keygen_data_8.json b/test/_ecdsa_fixtures/keygen_data_8.json new file mode 100644 index 00000000..7a0ae4f1 --- /dev/null +++ b/test/_ecdsa_fixtures/keygen_data_8.json @@ -0,0 +1 @@ +{"PaillierSK":{"N":22679491499676926565249058751269701914370165376325885490706178594236435587374452393672919867257890172146499232592163563478749644823548404207107209183759523050603597049541204457028947474998785130219644182203008088877544305999771879137962239304258371157231174473491797491114277983084811723764080082851754276992307408859865524067180300336894890064430698022388669278921501809909740064260359142339540812296913591956784925745003590749703099702370645409020780887758983568638652737043891478141095930983089074418014910987946825193073588506986312390146214478478314600989393866198945700334073322066709926152728868061176019551541,"LambdaN":11339745749838463282624529375634850957185082688162942745353089297118217793687226196836459933628945086073249616296081781739374822411774202103553604591879761525301798524770602228514473737499392565109822091101504044438772152999885939568981119652129185578615587236745898745557138991542405861882040041425877138496002923285573044134019257678380216629083610786555525642023686985067617167071631984666055727033937216003595524182134935922658674724596271159211427080317371979225430101192248732426131380961739735025604596604769061814219664559039810896021971225581431521596329081368850828952382805684407903258178735113010263626726,"PhiN":22679491499676926565249058751269701914370165376325885490706178594236435587374452393672919867257890172146499232592163563478749644823548404207107209183759523050603597049541204457028947474998785130219644182203008088877544305999771879137962239304258371157231174473491797491114277983084811723764080082851754276992005846571146088268038515356760433258167221573111051284047373970135234334143263969332111454067874432007191048364269871845317349449192542318422854160634743958450860202384497464852262761923479470051209193209538123628439329118079621792043942451162863043192658162737701657904765611368815806516357470226020527253452},"NTildei":18687318215344566555182740902454336428592486945614858718824661784376438207943593936740995084200358460316665071770681463630810552799361606949595415859491617650913620153502889285378972038135570359724693463761135116433672709408902151793979112715679738392883186006369274528906256519536716049908878346476950103274343269649895419042195937774381514132210454482820166758270346958078142742840173830940449171621914508101385104081796180941351697633772994457709351610367195330318869580666697900958479010130985251846923421963647318437209519428820003347978947799013079168765159404172743072632243706939700207639779907975142224264481,"H1i":2022329329707369117437055740094404969047484980501833952214571687130852032499620508208708908589247080600189902502365407836277381678968110704345539053376355432754797822267575827372488857681103447936055038802753292113151984972961755143427625893918328299356797405969999266508287378495280713821635381697950988327467894890827305051792226857027384943282520470216088404776455333696749084292781033264737672933515625823807581567568754027253581653106384383593181057349330506068884659072076739226363616897242406137010778123983315619151551375977509919335513557274798510437948502408760645678633359245877721858614575061700591393721,"H2i":16728597479991680407332164223276251930971882378040601546182090035388885277790620642130984559023085396113670088325023048100279567479347085329073035696608554975777409036805727779421519384442869313567486101701856985975948368091166211269762554257345698853374624187196304439193724792774291722910128170261256918581442838390388813651239625403911503915460141004046718650178671549506593787333200145941149923809156438433492770338609398675185696331933468246886804722117355530728325631706711888199439210221397335620762682713255422110226515677047306270190770133307509623731091673964502293431264279055367772707113499782043802219072,"Alpha":700288022223251613957148754416847927713859956440949799042517070837395494977874763069678215606343857517978071047211800299615857408404521804040142178463411841676954406290632508416581821716752066978183292738056599988555316232392914124044505869215229024062582757658640317765338779668426077387169029692496049188658705496409837088735779080791945342008953315430165918567440162054403325897948950356690074037053525589329913737022229233862669049173334548878398737300298559494748940199431093764755404891947609040300345749138369777405176216842207649457668546254960882835824822351331398780110578384417463978439538210639100746913,"Beta":783329482850997623099772578182907149966545249837661819541503930773254250094291320313109140596434376167405012599707684581496032438592402563794155693551061613565335785944865357881259172456389617222676989409797857560266207821822873987513532339869586280767013527917374123772513950578289353228173675550010268424612514772461565456864728127361311789547881860386300048077575741810518071655034741107924089064700766805381411225433903419094693995680437826069415557205263562730272115025589887419181062414986240741107620797594089841150840131462862886795874560544399010664153676322458374635718075236495916651306514940504036065278,"P":68640913873492537606010844650423790995456997952325643501462871867447978353159672600481720803886728424366525568151339756638871841019614115933567125451993971197491204637554422366149546161902718104978806315511201974286960292451000602532012907963646898647849115963432234100455557429301666956759717263611823270361,"Q":68061878698854114890649965831646189067484987421843828643167844827917030467519007958578395513720534420811865873913294464047994413945575272600949688561468036841769089430425613243913085447550089847106771116749747999890379133168390146077630186323144780282816348863924522029190759428486390153997594974250009921773,"Xi":52562288542671895401551182194176758753438280033195126762279991176573522042313,"ShareID":99910913777216787121500121711080713911605201308487494263101624819470958719082,"Ks":[99910913777216787121500121711080713911605201308487494263101624819470958719074,99910913777216787121500121711080713911605201308487494263101624819470958719075,99910913777216787121500121711080713911605201308487494263101624819470958719076,99910913777216787121500121711080713911605201308487494263101624819470958719077,99910913777216787121500121711080713911605201308487494263101624819470958719078,99910913777216787121500121711080713911605201308487494263101624819470958719079,99910913777216787121500121711080713911605201308487494263101624819470958719080,99910913777216787121500121711080713911605201308487494263101624819470958719081,99910913777216787121500121711080713911605201308487494263101624819470958719082,99910913777216787121500121711080713911605201308487494263101624819470958719083,99910913777216787121500121711080713911605201308487494263101624819470958719084,99910913777216787121500121711080713911605201308487494263101624819470958719085,99910913777216787121500121711080713911605201308487494263101624819470958719086,99910913777216787121500121711080713911605201308487494263101624819470958719087,99910913777216787121500121711080713911605201308487494263101624819470958719088,99910913777216787121500121711080713911605201308487494263101624819470958719089,99910913777216787121500121711080713911605201308487494263101624819470958719090,99910913777216787121500121711080713911605201308487494263101624819470958719091,99910913777216787121500121711080713911605201308487494263101624819470958719092,99910913777216787121500121711080713911605201308487494263101624819470958719093],"NTildej":[20539613942852364097890357541124859329931817468396278432713468646303963073659662742703665137736867247354367523800071318544570641421320510992705137876681425752810096966415479528824625129989063402576946505816887222102561441464103605308386975248012283762854115939987945603503283072741824666735245204091384515192454349252950007899626081034649919068642018312817079235168086885705851677572363277983076857313399016624874649811334825694862350059490166759704819411086564625186038339099281295128259092469609539775245598320922394808913338827772001777479207381548603315272620456484970681705115865233047669675602308688791376160589,19461028678249357721701139019984545699598216253588699892259672060166427273458875608319855785678884811755179389274380053495578644060470229307987007292965327985966772681212738091909180148035785695413643708212165777295662698493311553457174395686873169155288384255670661532430410131045712913078128214239252258473814281283319061613409102410606683119900924722782015902970301519339718368508022893331969649513655635811522767629123667744907556474126774472529158147258343482417188228144974952598132795041139358631852141986745214674779692377899411672630850213748161088638857089501019216868292821676374914063004957409393293909513,23815206664659393600414832732918591362081086959256855451108811883313935088830793690110550688160373127903180149093000695761674277348327575728255258492470452704258920461298225437641154249481888087192237143947805411796310656512191138629555279666557122333244803756577286887501632314162770617970064401783626962319950524158923845138939649762251756759762119774585338772559055859463599094869423262313306255644927649977403492926253217608523813644206820059309357940964633363130901166057002430269910921882664166860038861390305316020579398429144038386189480114288127704265879389663380565983482028227028306457603727009698486364281,24531363009049563762536664273685630249930678743601473345646756718446749360580428942513295608401046098557387011967587876621178423418085640157221932880387840241062539585907115950101921176093340357598786734576629107604766098059509560466283874031181440387973563913507733219768477775440248994272649062713092103053254889978195382189063452107439308150731662099755008823588080977928436274879799764825887538020606485093127463680041134931480024720440536560752357773730443722294290727915022250638670491342013254556128005158924861347226548459626859027825687870031912255326425000561908947972742109607669897905187712585858898757609,25485947141960036800495601740358196336268148055632283852581334267632567089581351729697672659186150817483946028874699734841543360085445274610946793774678284845142698994270979141586640525566502581978495871744643885460820923876472270768798335817566781711314773489485670479771252073613546268231833675772584402239718946768734191504723089294480532048176604551680713541748910822012363078082926628834536634899606309021451196325472880525430322895659546741570135136047631868000597393506058143850364801619503318165686086392731222189995494225633540472226098357551602534472541794408218767265775850366289511546336446350346021282237,28927199961592509462716713052933904239681693743133323458100757563361525410670677174848159248824087482997906403441479071298957717300803186875289912194352025314864665854179681659546207985006650252942140268140510157106320849846175665072784539119695315757729095462689260495430463870222739869312073694346079553731438032339737072477343055235278557275309616493517920166164080693605271556685355062728635594753076381152709174590915306592547837200121302421882042327338955791916538647734045471143845013412592155994390976714634271247514800401724247381959070976404354024140134277339724455784411154537706347451440209596089260579033,23535119694477523772171748044630208131923028017288499693412795663706886468394056769073862998142660508474676105711590469240299300182072142961838102383606369450702330959729879893242049940029310408964084662077585876233411878169942718467081776763994846585950049650660912827541883992039288017630464390592382481783566823924532043610685633953209522603678841504652207254189077646669746333277037092923165111872444873598439940966325805716105630151638779643981500665152639984434504817034412086671254173379166038071662889121653550757613052820175939040916661555723756176613161036717523938816196299007092417098079561970714605061629,25950783447263038071689830748627856944354421735888733670277679971199180982562433131778324823115329151828330351648021612294094370722267669972986008148650808031918722892417970047773133521052009921040352676366121022268583455702531977371124075420219730460605780729481918672698487964603151661149289116143779941433746038933525309985350586367303720987487112290090195247099032317451409521767630753382551078895196505751734814139673689437231496521554705226938471456297964527299627857211400740652357956604961830754401147898467475649318148547949522809325493238323065337997986089837089904293908389128632840557033917922339991780941,18687318215344566555182740902454336428592486945614858718824661784376438207943593936740995084200358460316665071770681463630810552799361606949595415859491617650913620153502889285378972038135570359724693463761135116433672709408902151793979112715679738392883186006369274528906256519536716049908878346476950103274343269649895419042195937774381514132210454482820166758270346958078142742840173830940449171621914508101385104081796180941351697633772994457709351610367195330318869580666697900958479010130985251846923421963647318437209519428820003347978947799013079168765159404172743072632243706939700207639779907975142224264481,23171083837957860801722218699383337900446240030786871268841926233540016534306722256418697981846104677203759841627977766724259030420015851980511088229043403050763668171722648141766116654882525867416891436685059276174192868946692072206824573955678962077288068058032958478942750338128252470165933443869447212456023356245726416751721989152798706366691818486325734110680894776063318626260722657549472271184224308146689662638536101291469177898475337027531732897213355102104990685266062044811809193138366772764276162181116512200063463469172637189164324496242489479899844513951546392297220122152709400797483802836017803985829,31343857270714098359641269819793471247744609345771779520849062499842222751853736635128030263011267623933026775894009843057499037409921342064326054830123558338476304900840753732976691522721379417037190976719048367738172877422341695489954487825668390415147795382659776979019893183466662138357984500601883268994989224933833342232607751640920642550766835871191739404896219865225614116435580799461951708239551693029017567595268404121330207564314786956323833427106966279493560190075571199071036639702485305576334075428484139050116713328535867597124971991546934922511844853709001583656359284723717084806850145785405536911177,21157487427733991932564510362138492162446873104287756897983482468142107066461483198236006898398559574298806811271053872211924774119515269456039458266616445024300383802406544466004007569246261860103312006457776588799344222340569710165666518367783547810282003032927364478322210948885423703591814633243286070072754280297773344097615910071723846039979528910869815670975142743376293197136856592859188733532786144697373533341877747464753616005694543102759948736736802569257325101204596297349394258616025918915521692968786299735438817719576226325356937526633071323693338940757362235570825853130085312301448111119042363796113,20871071186633559430638470998115518791893553646420368867902204568431630269565952322291766136370093127894084798814242475456617969102595313205728405129168253735048454253508700456761223106599134617920774227174015124829476988377890165462875183814841087993485125686632410376362585538078467534668954228084080919739417042353928509644795709201564083148094079836306167650314513450129297783489119015593642581024870311297891618816623633162063381775243950740681581620150958717466968747843706102214690157071025611480716612116918336154774385432247274600064909320680551901771492165221773721500541614228617829117370166464409020423677,27392140202372139560911530190722295626016991167776777076251374167016701252229100335980281077736021393527993281083564981442696373714433732500818431355034758384480955155409564373832745499649881975977124862697809360957420580753883129965594447943274206109113518479198329538838000642865155652137973709624008263285324174285285129803357738290385065522262059795474318914719823768887144641758090777562619592046692917101170170722723905514971631800061092086777420826999668590868568525034863406950714560799453233548147404988580929389926995856613912328981176466707497680180241272497358147647189027922268738449537259460751070153621,27430458285560064975603737623690566617914765114564307656159371148918349993794669623672608540855772729568670170546349850367039352526804750358257162362490778729908291097260480430890476823722553654389178498566668573496227008913481934125881578164602723285712928871252207939941804689355173665470036039114037118963971589320342018774107583274314158608546842149328506685304690959566263296291871998398637364399822435359987280203416832697098234360106966146607816540746285266790106830402077656904149244001383199485864465648143588026246539864484902228828598281873311925831114015086450712030764672165915248196209070047454495085169,20958576649034914977467969756965874238364659071947031154211972997487243461262394795340258789930977809611131615831278870909123144191655991893039673506539165135637011485008482874021240555941833074286915507794874804218274011487390148860550531668300157069443584231888571925159473970195937554740938933226402208131160317818926784959057391389980505131685522579677264162724011263439981256344785140426649255485125637348357522582511064347878764724812085894898146080695383734063354384186594813474135513405234523117338489484424618032520881618202129068318264606277435174234229102947510033247339629069254901430086639327996737230861,25673210614761004254141737312053451635018146154378993341101985326929566270344015265597835170941666913606119762699769929117810862190840467973932188558749547474174367822508601158829928161219529997833862214002106486508027112865708012732033692783629855485545330232068552007350877531730729790772847199443436084419382562932662568511421420283558235026303217907581598166628555941188586096538364407553738314729036218493332920854764055946289816665260688813327844579390598566768671973314358968068459214729157676432241630688442073088681756498136814491310636028421098965714509622937097403466307515165856202257786336739101389349089,27062431131775909264962122516003720577621307700606752850978674545503762322327045712593154396229756047740198870458644425173406714147601486563284216353367017457813364860861671576291918230182938220436949095109018225648486931358793025228571750572403143070647269508389021099989559676856968002395615757641794675119572488971947338527037552287756390904188517823120698354616567162661395526975254448758091053074808436661809101512025437321837959528689272191238705432334775200965152419124620293521962173467865862080429867958898040527206234108561471429991355210673373595922083144022410446012714221026174220695995286555692560595981,26101397013404440939950108603288565551073409553356897393691328641679505760230621741096317929709636865532238670826796537369580597665138924272200816037026280780915781305836081579178356868109017075793286763556497902869947712856535743263321959264839901002581734771178344662509473227839268090064000382806059250315977679226653239225555007655990623485545590336008766750972486014525144801720879444739045959169483687885427725508164188831961197284042818573448808100923870021600896976125650269597381009562192855793477760166114366163011349461311146903814241124631772470784181050979028948750586113514587005436500903242591757553293,22437602225740742482465534898349205983133213895660550238212001804732032977697798637757435728694311659299624886491819969612531644822478331097020027346346025174540910579800256280214031292073085792970245723432769912206355626120327772649905875827091190500315669126429992547075064736037570537735332469814000462556933603719315364923773085086614780916637137068518726889173784282955430621992569759561719528189938429235007732504425905045067985337249988673084527372002559031400047880307427208848753891291386460253720313523072063965808016289774609282102972264056704286287440985034888143293816594327214769326166521224390393446693],"H1j":[16370062914568124684409954423220013634799944354368183091925443712820668316759795091290952642141219645055533606292548565759917746455430426634828957426644826424037530474618159463204943752577732484149675671820306363344833458247384057865310742915406677379586789735200748327711872632191061145184949312294612467345847214916930759229195852858849386686352293049987465485866498220082468131280135383612600619493426252446949294373638968518891137429993551161437309269629260378927918725566711632082553316166822070110359114229533322390061282040482480263995079579444943917107997110057038662405191417861817663789094790962966996587522,5792666313208572350705907594949414590804636531753541567087068453778543363077542142305947911768781865374122070750607847515026168979710170113788718287465368491981654823945993941924700096393523941715256095048825025361038086570514643251828085846380954791657627403414038681940866434304045104130214177360598208974353162505514170835103706979081795485247158115653501838694614859268884296606546104394637012764653804556264770973741677326601115655746125293204398034469241183574629519235451142797709676366285591723984602961129858687877266469708766607187000988412118886394000517917001485137799190522482532376333362935442751367745,14510201356793997359892744405553071944121896518459738320470368478827891282273167297002903311912769777071155241288755372185351193850631471716718530488323104261827697027757019895835360274243188719367049075501436153398857359555924247334095665350350441220453460409146684994664351725204034521761578947269005519140498383255606322844603919000682223940913285551513356600061526959181206093504072618536296265435830192715190515397064435874311583709516596584871136822289753837472532490128304199643440789002058080030111113389709287097531544417461853059085059819958060220257218705882557929843952675556987949500595639655528439052202,21994027187251658420706956116678134303619268245311594874227984400819404446053485122189884678892175444688722527594580466254690437593853064923544979570444911946308283663229116693350631331935027065689358169246815279257122823014594309629197723508317910829246255814111959552337648906237682616732913305786178221005434606679461852547394872592127050442856550471832240167936976142756988960345619830477159914332536955389792251800932867389016006568741180137556936582683389834385412181167798283357296952856933963222988284608097870458140102834156304710781157917296313315513842893014212063887070100364867105131178923785373561146050,9913834538682656788610829579771569556624609911472542281771864528920206652057360227595914694025069327892774241543292898072673087864732558768588752951687639831868499912733997907550450742144719953844448973554109420086839278177283587750852958353526057789017170152122423018814264172807655239353760715885145548388992476483731471865364270428702324445078126354834888878640191523880163270112743069852403951565444480363239177556818094412397417215136415082364220806171351930690164376890892251369372868624028034980680685551131786332553623705883769998271596791035214982761974622986462384695349153129828098712177799482890430520965,15464554656029222110560140639422624868539470020281691165975400448606613120973644407534365935510334228227263162749065335291017684520353168923100727746351715681760916446206803485743114757577242723665933043744987644589191843035807511863595701170012104449542518101585729174897996392297770818633483533801844500665798250501473521227123975005972911918718226524366806206633841675388137041998857549215313632375036761617534744890091542919972307048750757690677067439820416806817051344016166652866968067639055986253789416713411110543055264622333767216550525033482750914452894139691102713436731472281130988207399023815239852528906,12865788614422531768878171769038267076266208200249164027644212721909963715015912538682157638127903293282023380796412378159235431043017021949518573892381565899437599164703723050587964116914107635838030249942901605297513982608974593500166572552953195544515492725593747884602852061628830280449190167844572097543184555448060083835007200101317266753106995526429573085540857281097156159258319440414895242242967023265742835942344738184941128584859242462621792495405423196954908356769683815889035326257091875874458718611430785903143039161526479973858541524126951528796262613552089943663340076548393182371918642954593889432834,22194516202811321146792934079465991238594712937226367504517257988113211333368349800836879103947252405610400726941861867633710543721876626238467090611506859331575128297406631557631820626534381998686705168632059305910804423292984195597625141279765512951234238593649775486094326905655122386938572411401132183960062730500896105597665702000968846572795357957098192758080717128908256523579293163137417423771381528097786100281383788052729825837521137512379280310081930804124457815661946839040621474089357381345723789618079958299474682840114875558952249988571746058484000722421698440994062460208554903525444210802321182968014,2022329329707369117437055740094404969047484980501833952214571687130852032499620508208708908589247080600189902502365407836277381678968110704345539053376355432754797822267575827372488857681103447936055038802753292113151984972961755143427625893918328299356797405969999266508287378495280713821635381697950988327467894890827305051792226857027384943282520470216088404776455333696749084292781033264737672933515625823807581567568754027253581653106384383593181057349330506068884659072076739226363616897242406137010778123983315619151551375977509919335513557274798510437948502408760645678633359245877721858614575061700591393721,21638702445456858422878500352234793329413106731788942261751796025224145517964611169394617788434763506002565806620170893339110273126875286455095506459298086020278318872581385674653253080383128797980439557511752718258375238388481802546638936192461482797150514683008473213407715728694302414916863995043974867827876036585791719812271742103323384468954527534596036617313432433874380308883492321501736879178345427074046787174556058119038049586737477628511165980047288251497278209275581664775606335268904384984155864116270266473616061700061527150495070719210903471680082400487754898061609554671248760480063619759950744280907,20932768206097680299943959313782719928339866139959731166252002876096405653871733170637914957728294590217455322823662941811142831487382716004980657707514358763150029924714520812685697751484102120909926147024006189544048800446501267477163792293393919588659127430522309503845365000611784195390022621092266420671288509706282186373855655358090019051530324622779193478505342408854462043136412488215465955955421082850282626458587043647758494935495915329050933653468179762936320308005669155322055934931071589853638981754901315764484414249149121368560265856082417024956730272011998498550756243974623835494966366962683389714964,1365816667585940330490355905311774458514715320376130020996515573937571923987574784307504874484515899610747050162880466334946062918938639620242137371098595406424267003818882220942016240927776918797542668204898851284066695289242978919397682088055368818116198595348273129318762376760634794532531433638073562846988038755248023571028829475051882101071203979111269507596248527906600986677728810751499828436067766182628039345309355341295172437424660504415028913205507139100147921515616240146193076677157859750716375066201587358526136840334151066553547201088947345861316322897488659331106732575557394540428972305438213375814,5703448175361065536885380258834894924349694750000788978424055908887487214267289314410654116737467233333514153490994654420800717947051017245903088635547080581089891657444714373263301759995815635072257679749046151543038146531810310826817366207696928190231298874979984114964348460891792295427444943206125809938612729939665048974349693961742238426880015130297226114935093282566300228257419316454068258492582819117310017835605391570376283517758701794125467889060184214275911038527696714000045849219024045243597506828846590195831908281658454892131533791810760325400211405258812142759529523572815227489710851557846638137542,6412242406353564485058502679404605624009190790593030266854505291800626778702270387175472290319448965303250433574173375628339895100997329474893279692868549940279796264731093585208695625011062617868491258157215447275957107991387222489580499373804335870682739788296835432969262878909434810429803264643527538555130662379672012787064972208117475596665593916782896686056579449802576468324812730306559649834202797329883549294599723290402017221639617907711497472325019619452322282704828796586508386419927496666562295856731151167316262475184222145101211618002798513055006067228431048839763646095282531119806559583105533794495,12506213831497706601305625665856619892819919408470741644330076368184175310515183251146177621238406207206410185643656979107225155831507800032694528257147716038515158570256044209419514879851010106278924359714862316802415670557334433034976750101928783991744583819411313589306343712690219032368416678985323530251239318661396466801994308940886752046080901718450406046375904389766893043894196541576969928137946704159382893563356338387889137855413730990126192021766856444171515497507122402917749807424621383187173538906785892654668489198127757882153223185090960714890345630801099413698632285321494907662894187137142803150791,4340320683992731212484211057800765907410470847269768304639037529290512671362801376775768288042129836088810539204858832843247178308000345604701431226310915807542068901686097542648829915466491213307097734259829414895234796525272600474326857346693882386640793824277606043756669695477090601330450743232413209505539149906338741119182508496705355703793044044384724643256986023764031438551900073624644692938223394706241422593949897781383635695299729171084301185179708550600098470031089086344919627503113655735768701217637285566867914251954499504690075652022468818725559007318841314414541437592229352428286215595483845053638,11992304082547451264970842283976418853821301172975086658682116387543359417074268643442593212371361490968819128789238354995117145993279593426471336648259583293294202599078859260437992548184464009386152763827946804967424362206055435693041324410893236957405711025923054702040161696386453571055246924713260145964584750230359074777621444549946362450468684233332414284037283955916761049858000878784786268023500095161975906495439332741618288811384519280375489794382891880648564800750663555801045203854227681083222146920912455217541211811955477767635787030014152643158711960638325867606918508708678622347924499914937535267162,14695333877946105505101457937623624377562698430478247685331048607650568913937201633971254630714736577175024535322415669442798271475956496536083972430246897654017678266490639701809689918981250971730052435032797344400248226649579239038593902835536123498617918666329121083751772876090103853533035181736615043011673643017303605152279678650202512062770466963460251942403425462061196179491356440328364636048438335959347603428717042954470887883300891927932651483741068303515425618933688194621659816079976510221005329843899476003615861655015952079393164902282608831513778303062716347528913475870793908798463564832083549613643,6361624891550612817090909815430156259585522002511378700573226127309539860650523892977168943678195716824260472829831132024282728135758912178943090813161584286046605117495775878170654691942858452263763077967647297167266507685944611403131069163214134338169098006751105941940463654618427873599267528041887836331948305951890335742121311832653316741398094161561749334956600724220433324620401615490879450816097431926849306846384679126203940987154375373597650036103822699248044107851648286585837187416880739896147553285981829664828869063480707437325000260106329487862878699057790666160151383639198420965781777521408308842299,14948927140088320458060089936345715166494298631495857212773926944790409869483957673185876995292328343640197788589621807184518806705821872810447516194927678801617268846361533345460325613772855110322242304569109406957894646727384216069315325052819333705539766154972989576988248927288284161530384846682668538198851543196833452065614949748530253693700328342501577900059842225778082026779632761099626760985225309957646536118173500439351182747667021029407125807666947346322131872894915154624415940708414296769044070685030466034270063053482191494419465005898644603408406165778424189251953592599788015054586521957253320449350],"H2j":[9653640790649475435050720061635061544335995170813227062007808546473167610366804040613054457009646767723479128021709179513573358845884462519136809844401815066012655857973373223748942767836422506840658738556503260986697250346171921063441485400421533124068250604530993514803166454504801884882297625678932746326066096923436475087338628767636689481829832307623108408425959669915171224014581673426602770656342925462023157550194457295116217893440581116140543598050947318929500123378985275492765280831578803707538206440354119287576298034238031692982504012470196898579719660373199491817717767711160029710911173725338539566802,3578111860663702772408903345930659472256129868015762875031051677614699117364424442270785915866444756532836287879751640816575659073006676007210405202315496945346450727441553016187592354415793891110773645408147683476571812485850037389853330648238106038729525075512542830213816094853869971661719959033499816133612736102442725651388405183329714325258711655979055386253406319598230253658818466953001815116530962213661362799968355793928849708876651937113231862631691372187008559216884922263381652908899796744393080985272287681952842592674663712445064149288160957033524932550150413325097150870149209345404214256294282382085,2562656890570835296352376205216590519360952576353253013086344012422175466058176642832419040937235521572328705583208834436813588375562745525224328564354560731400723267162764903064018742843839822445601315505274421672289602485557719646504320106522113645676636456687468751723898215955665240524139836668877382766583475339565598073690853848639545227831264115164596396262772422415214665834769274554577301336288865874066248890243346947740610544045667761548206600923673948174739356732295677551749947395385332556227074205668024351973201205328576603362256016900712683688241615565934460363012498930253514800348031700419220337084,22298685304249156715841839507145325522077048988910268345524279200863227356693376151033928569980263444962701165900514081299580440300365488019578288962534096517468902687907593109404000193096117803450936780948162440311950526862133749440555125530434273281017640257175046682563772712146188162909037424635371282116160809281350332585723737917537784267577381007869736550494661878733387948458251550312048040279754696568539248453484809390032249968377837207868808482658171733689439009562188880777607125039187467565549644537971596666666932158369857160883674108786200103009448463903055431989786220430290067137368612432640074310237,5879475324785385886080118453628099122983640585548725925692818787221734315336181255707999432375105366554548265736590343628955580077952532008988837072008731794155978542038914506112861039350525606157951017828660604272526605818549217659336563240062224484914310161520768881507503977620229908361541865095980430141394883457555144123820008061398004875781145432780438239985999952863196781468403423593755390719871396312035325131303835880979744451815683310530516197085535308856850866798018523735074120787646575912319226234213646284739550604897450763442470406797690674949855848424274918433854009972115369882751833585035329242761,18385446607341413929216752317617998458160849115285197433981133872531647462267817752048089105851349541660795002685652456000086108157981979426453705134803682299691630928200421847304354380350114763235863451959398215394354125874494984531309790405988904217354164073819568789120760731377280912128364362051769093741704293517942028826498663326655241508795914202031051398724638536523567800437872676476082333745719105291491676453403521845621182329449421075607837301738332926110019535833222421409565228043580701032497151738816862657210572819375918881851411438625526045192015060739626198734346744421593858157488507552447503219157,1543023308301318791291636723263661645234407352972693347930324541592073282303070472660827743672362126204249434834670307886593868303926045601951702434485524524299146190187978789568968092026789881246345813079894138764374868096047892517784410005345559357208978859029831295378789933334638460830863012154730679683049737545160281582305039520027158141403805442275432519516975114987511502563484403828987844187725357101956491714139410763551382100998178318863295224089354110436171289236674317711473441156004575613857935802947903186710273135122934512388821226072049093290647716152026391828419205457729234939199662889356527012444,19612969155814925927900736991694631498815639143900750081709470615537990112217002271570654324774711607889679093067885009086620212727925361021546388555967618760690930383917718167829905900473725102007606380323545403188303409627969907029774876076466652636827981089598601596821629485556381455948439528301393466043329774616323471054547330305463639720319551756652789237846520745512886328152641158526571443916940675394167134193466655448590323552123565655514390433855054114283235652222186673800138041449545987929749641868001910765212175435331820335256408276886037716378072029444719891008048297796893611911457701948988529229282,16728597479991680407332164223276251930971882378040601546182090035388885277790620642130984559023085396113670088325023048100279567479347085329073035696608554975777409036805727779421519384442869313567486101701856985975948368091166211269762554257345698853374624187196304439193724792774291722910128170261256918581442838390388813651239625403911503915460141004046718650178671549506593787333200145941149923809156438433492770338609398675185696331933468246886804722117355530728325631706711888199439210221397335620762682713255422110226515677047306270190770133307509623731091673964502293431264279055367772707113499782043802219072,6959317283624626561280838810011851848606573383456333866356771642710009365943896928686358713606049305764133589953562485262421030190625379899341516940088176438653144375343629199857524649360799157617467464667207079997090732685762910728717721600193091207478294785009859545546272657408615665578978698966309579302786158306046780048259033960048367018506262121833776982527433736628482989970739839626561164331780819203300647377931749431379962789021848504353274218995997754499900534324222498419599756583548358913120017762065234354717544865856293340540081744252368993926137398125931373959455585431506453093937785431907339954440,11707820384786665143909181917722140695066077204138675859555940823963085499198625584153264077484611920625749300043796981737297557284495008476240804003977980903028035986014301427047695461308987163082644181568819427026377861293089760745032220979974314071873695748444473344481739404234865330820136242966321355292830007655295383627072182012764804101331409332152687101319613845603099019594628684448783718018158413013589965095889558760502141979036830513073469713570347578185733951700672935586145889495063730457422516713768592535269075934288536062686021973569079600458124449475763651523966025703378628943004868525425132768470,12680113365919882057574106113475868522128522384382601197321116786250024227710942753687346378669117549887826210207932325610070970266526443555090342822407043741408930676918514338947859254583933603158241276952467805479024344654828575004834480980171788527657050724406198542408746742354531228386476751247072501617975174749412587537766151828306153888252035411082379552917399551115964687725743020641384211728557413837203373250893065347048255589312756928959773947595990023044227966600250595372063312552514516053386563033360883348059069724261103859193470298590631028566611086928803669676829225666250863192855787196720603673760,9019657743968669607069997647539968262488442864840563257526073127843215521457164945521996034009113740811008633126128201485876365964359243077677187550395794512954090076458031575481109943534530172796807658845833964496790520042423061347000207701119849250007073432625973802817311058171823571086584900654526615124913824393095137876668486739795620319593113487319306758076868523633806281732675535191877729151172494277333403640038019691517232275137009983348569240826245496914996509643617684093222096189728055561573909735610063401084000594789204303691795045753669664876756897469727730211469836756344045393712182476806348262481,509727692658127329234819348282810282823358222955712460979035976368760532139665502509369544837059902335508770138210475703837249689840377266421270410968940058538125244069674567645496962345390684467242600183265156396927471901904730403435725549974213712745153254130090979413745442250230122176329142735628394058559735078808655502950813887104168441824680204081093532561399756958380811786995754253778833219233414597390819387529718886819478101169481249247654168746478268826094117295037052091370216680279456693786586815595643437522530315484348520350527079378100131478937805285900851443697897872168020710497135465069780807687,3842294189873253197555038084451026657880884971357471477404186912118522652991181539287485996470843289095459960588932515934990566949413638625169611068786524327230092661471599333492933504858312443510340452825109814219748343465626968500133039743956522352452046474898271016421645025612565409422475581907506677274527441400119913285024497410632467771786023570373229380492185234340140113773065511943229164821322784643171443642045254567266530741214826934397811463635644370547054062567012016231228876473774669826378368361454200858389911185989849447377758286974943747417740672897265471383352127822433439855380640722238771424561,12605457156020973444763168611522695283402376793806466187139735133742095649198553225011255516233464381926302993187553632508703365300132776800901755737316341235931477791227746456204649162573568121476427289406145613748980339685673661511024577823438911510307584137593479079190723698666793670318162798116104492476114229973922338166221669934104784402698512349426984473431614385866651807327515058966935011035923319124790759086336194395000632944700277782112868323483780168144642250558671981757792078139349701070563555668082796938131863328410412160150471825619049694173807371104601644825755844313657731729068891163705563867555,18221138784555811053296911040444811422299569221370698341523745856400091281377839778678778328149110548534138934160836481393838346908432982920562116626677959686450236292050295531261923474882738697393510842972966810110218027601675376030586402861098487543863740705626110087204717386977952136809165092530095562928623301371629208844732733664526090007002304626939446606391205626126192870615394522174649688440887870385705569710809581575204639778805466412903927058799148697158251622260213645585723159916754663707237605872275846686566820885362722073881904277317597403167380835907876296870877478221646920284310430371934404822311,12694464409184116198175216134705674117698495589897734763290223249700439697747213221960704240817308024376618649511257185410755720163743943692791263666036558979570909072667619923266653682384882259644954119285287063471541002032435823410204495631358202104734018269537402171761572193134509812396214919229814690930600798504895496564687656801956575973479011431776352638782289114699743527186781919502658003154674450714069197242726393985114420810547684173494018605147976810102913734546162705259030658206284298418521349062777115509219489672039075093329236647292016824670535351144784388483525751068225542810044999850751665224074,4201765615355271720665237538919680402664127861292891404309962354268106831635826650331041297039291644925592311983403700464576600435518882156854904159089879201301912105368413055078865795374091914623189759593456721300785707753873135853357294442043908826331857106210726005526370024055346666586491341046296314798619327898858072624823009991437876242325624019938022318176060332738994176297193724805935694309014605422020909137014676945305249645201662101488974241605863532571828450201507584679493905057922784236072997143238879363168245889469038437561181276242698369654938178116001428367837409133015026021079614840533626761027,5693818583095067032554302348404689889827513405370432124730856324552577938645345928545249455102636900381970277642590696482249653647276002965730520652542065397111012479589269283364878130676178205766673654461574816233876555267291293343730094421360715866449358521574582941335437947403997555554148186986038285554629922609604751054748762347310142603219823359220130919495866316927224981350998367935679597793982889611172206443879512553133682522147111994374985808397513270886689704297115982752710085691562031953231724109895260045500479387280386873351701423764105530811712645875225583048344423503433093456461313617037044573606],"BigXj":[{"Coords":[31961961449149592290215619337342545369164998201385135329342844666166714363705,64636392625998908156106021830673034903148364934246785109426074897879798496695]},{"Coords":[13561027879868215202586968035768135752207534764402067848160241312364043370282,31683215740694624076579960720726613640416539517460242899883851320256877874663]},{"Coords":[102970472861055393328233354777448191839076263179087526130927097177204776801806,19849778771794568183958877322544789075545226949228544528619329359950140265115]},{"Coords":[8366486354279759555693815735694831293559828965602250556327317858912116678471,24456250444071880675953816335612932507033433175255559522554349078047625549678]},{"Coords":[93126246885046599201299142306317944158536766260090154798797491446571717586613,101632074177392193573512178573083324222329391048269493231849116848088552218375]},{"Coords":[45944473181199785374833853975473363930687909609574532965286298616052742734642,49106561873713078177518155217967815241790729328033604070651886838013799968339]},{"Coords":[88807289702586806295763026580879412609419986472794654189482668002118698433065,66889255218792877467551818840857264643456782872798377645941824720058728156412]},{"Coords":[45745777770010867130655637386117976632006388263133845103488205463444756286557,58413618959379828248439575493421719547880693819703454359788283537541749522854]},{"Coords":[14931705718614911512649079486924798218629483414127465950786381421646404878840,70853895869521315016717813866703398949051565204254795550601147911581008651495]},{"Coords":[31702825468512650039750289022997764002837389172468049717092331147393818254752,90704921170203464181329063311130512192295590723462840980995045506481351030148]},{"Coords":[108133277897421036808605843118854356978565880360693563552498521263092161957794,33994893650793696043114830343063091347849012751372498052809673503667071259863]},{"Coords":[13603746174106309213882605187834221055267478293724779491981408043396477605150,47502402322605913877968636451206238145707201411072573659819652572960084227380]},{"Coords":[21962637032374642863765173367353663611071785709723940819398260699915154728736,65876190623954751874122457014542214494068664571689464338691288646258987627994]},{"Coords":[8139291295258406047002639746372064115101651961499427493344848502049438028449,13643120656693319356484507306610353728697986968072320539867387334577150577786]},{"Coords":[871083651129542234211830236854985246175496411885064575219875767816674532739,100904963893789549224657775356884044157291453214379932308347421012612568685620]},{"Coords":[98028745019433069815621229762947408124245116227553507407780733119772046992520,60367568163137055112812282822118701471566204774343904929920219271364583776122]},{"Coords":[37332951852807254347441974643993866127041633128152922228434313154811023954744,56046459898819968566785812285970001512876757161864884424831574905585289505077]},{"Coords":[11223798616675111197150792218010453124916879614948521844981845491687409376646,70914747125199464172751182264377339815163078089055967502760766110580370145293]},{"Coords":[62949410140974969962342726366577125978516456835571210444108422984760191628326,55668150354406094271153240357261264601037343235231498038021007487545647055721]},{"Coords":[7611358883569187056502001665501128526153865541559158134839099203014115911991,87617845479447207941483995353359860120852817257735643485765526341493112597509]}],"PaillierPKs":[{"N":25922769748919102678415192880711636156565612427571550685296776086119205445525743826557545692077634738129321690187868055737306626420419536394422682260657759329710259802294458956279773225258250955469954464209933873407784778802101265717840506851919529598154066919091078766953942869622551929743069097967501533345363150709912011028449270819442207860620552088412428865900112120786495620291333470644949767300948329241775121748888220588626655915013364614554467190860190736954650967874940702908395331234632114014125372505065096924932509595285205788545338407476139436404463823043865599023326570565049384032977060875483209339089},{"N":23930233287283899271771864413305422456138957780711273892670074191715648409585503033095084345383391541524625291548041741990557564183855401706042293717552023237439032182637019639795919249455653535670614575331737610284863144094845900714497635996654401300216924764570210541950557336240993007183309433063094227377624710274228010652758134777897718742178998545079447283838099902510469006366469099975469096355736757507201973304413688395278990349533350163833514531655073848517781662614171483003731680841330633223244205178982328422170273570503713081265847261211618499950287557687314846590616484106774575999250148317390509484773},{"N":23804125140052077689856128298352557083678652474445385365228110453726681237860799979845611556170894187976654278582576364089033396218674226546868809651353049956675922595541689542576794678062495339422204984765419389268325283682512000995221750412104207394441438666051694475950049774094896290106430636216894744335784327798634247450687264677393229214665686649911456587168142148024558282134024448427550922487022680890892554782651383972136386958126051377715096556862662265886688077689941967157694195467190297477735450118736949849327358586935699405848605265912107169200547464609552395233560924746135866463084686118233592906569},{"N":27732731445242071631661957657712700411367090291795241371771965432140171981887215839890743735562516245338158767440902124645306227526755834590210240211292920385793070069156192085968959067158127765511651425539136016999745924428061397793021945121990437538890398656832618417715425504589084090095239114803460787199036351739230987513003864153861252195944069425337294669643857426654756086277471320443733998616523518289821541295617435513033264977202437153989318832642208143170451837926277566396048774049270318848738844338850668187024045715008196311523744942555689097435377598835544336914580911633671909176827168167136470690349},{"N":24540078122494262833119917930091872139739129939617606686122284549157786865278292966087938309454800165081094474899057524752572006230843959997841521536274236615511587750039832014979332539924539915807860222967109230298738770371871063759834296194059907031260324597353713442284471130560805946122495294807423458083635025189319558646442212459161798625793784738344309603016513355951936699928410805609866016648244631951643648288242475041729105749202516848107495430809184564037582943457286768883109270231510808158554549441157152513493684930416951758705877335895250913277012541968048511163986915876606316087458297080987346429881},{"N":23068407873896187320610408658036992760323120237076281539139801143529656493030091268390954927616119732305210576479622679524747880246080257702939099128994719527894439722828526117361648236913823027514544862046712398251734066527697676237348724465158893599560473200351530224245041596340220963683429881340553208409699594299261181212989221107530971303522686320513564226387471374456547377291192484997988606654540899634665450162274963086331783789860908282085692296248300574631527561763641974772756130570734735297575564567681595756096492735284720794891113064512997620639494646662790341453069978107064092657029168133504185408209},{"N":23360724885676198523522179321150194474267520026708517257764444663025119039638464657158724624502663558960702469988070676415660798425916276572290617437202837750858738892140118363926690520956187802097449221385283612203760207950600195667994976400493623569930090999021596112553157677485561299069991215207522767873493631366488446241092099654975621689119086509041077742510323711222260189730828492291459421830791540197321337933505867430138627984859014648102694909985043765241359798051875756951108870386862501048751981261038842763679815348130953290890391440850806363449637432840586263665690832227799688631446932015796916844537},{"N":25572476038149983843824758627743773292157542015669155545898739136432359227667585235619146413408812705275735125477228881724887114180658812229689479785083051083069428146070988730518675361280497876215801249358736365876007532614766347833762716625529381645528767502376159614744663698030295284120589012492759402983796882103200388651743368106596836536656368370930363045639317610411594882976032564820311800297421945366798108347221120736308176815503106682839506833524058020959093518528060465861144447540812579976237229589574562145541453749754749768478003306870660214131556451734687719631047077200787163529663274266186702479657},{"N":22679491499676926565249058751269701914370165376325885490706178594236435587374452393672919867257890172146499232592163563478749644823548404207107209183759523050603597049541204457028947474998785130219644182203008088877544305999771879137962239304258371157231174473491797491114277983084811723764080082851754276992307408859865524067180300336894890064430698022388669278921501809909740064260359142339540812296913591956784925745003590749703099702370645409020780887758983568638652737043891478141095930983089074418014910987946825193073588506986312390146214478478314600989393866198945700334073322066709926152728868061176019551541},{"N":23556951187256713732039305973238937631620385080790804249029259279472926645248156172448686117325741554381537031072742207487366612992119859269685828207319515666102872111546619607137952974660084980511684952594879342586512197525409799350424247192892012163769784591542546626323584978204193899561072157767856334488337110957680579926475975853118319141371431419486620931003438350760541975587261961199260033262263106014958269750801811225868080849204705441859105664948039653986722714354940941410686784948916936213417318953574086609821961649007609305029496977916873440356977063491030736996785241653241262171162950673703965399497},{"N":25874692591276389940909836821933328634340387691760211719857424847912710687202655208899136151842265948895002254373718724704209721944297143062448179072459504026936041473424765480639475272190837266572978737262449980766383982513621598580661341958135147571122513631091491976191663115339463730624237942100977649124658328431032849468551008597071378488661492324861414296280692846039598797857140808360770338990664282941023358641770157837364612463858095463039043959476170224596463891235213200808423306885708639894810932553685021558027739945539621344374072593175483199343233185955959027063970833388545231587659014590298587532269},{"N":21093015027631740022404443614096248522776233243516651444497036871175728958780883068858760981924585432192986275662870128643941927265524238598903061299795143929360395711020210769824764384718922898979318706735662563638859312024117764087176816929100038836825165997745175858151391747552772916358596447916581236137266690055236206686429983418915105841208302705945838725058954761546083763560226985859597874827308926656876419352353487645531847757035757295720869824004015071252605178819856102760159009139713396577974830023684477215548955933062314225333947463154019890073099705030557644025494887348484646782031863159015194484417},{"N":25298229297396047246415163429032546137139715727559844391184017906947304850232141234045323209407471473714145852636924268416866274482603754141415609592221706725085407059971638122009913495964543366119323417218834638913881087432600102264473788528537095668778412431377856067113698729914757144153775835786313302871273438949909936263664301138604696985912220658568672102041006541952444982579070062275651333990266954050520365848194152044834016212084441028573044037025009772616765171118784908205140185837844772749992941537017860827787097838183799078426827486346760690086948873222139803967157701952297751113063507286886770253809},{"N":27142202438632787162126599492908508783692765215748557510315014134009044742375492012422395905792294364201376442258017321008269356413320158807932162865700040957744157446176162447390298999320446062496836729102114052332958615915307193716216287036998207324413342337908047902088094382893405585342830460716335897834006040665407645344104524772021574862180664953364488173834491400964015536206179143781066229852877159880337660767454184922616386524557470530917791514588890903382115919687896218697262329973216887300329083882938499296413225108475327673886217363092593458630101782913564451822536507792690041998191978031482893873661},{"N":24506900410165079432913879286738242981557799447704277709132563752281068885918764244597103897934251933625444124974453530023693766922128717584028552755128051187819589410024704161034785358235535327695240184593017832269373629062497324651346586921679971074785452914954524453931920025017233873766495332551435302696547239605953737313669053194482788679487077465271167890491044626060923037626210805459313170671202877996680415217025953459280403666974895608025476083146334864242075064839862857242870450430867849337473211116054259839281123892458791925377357496234454799948092884977174468592367921171996109259120511593665944142269},{"N":26694966767987840469949338865344547117483340362831650227215482575365406012636774021468648984974992022743149425563486792907591668251920735101399223711217247824036472514130615393737405150133409306326610912172081216216331513707092964488994949651842782342704418212963772590286378010081225253538245220740244206602153540135126863052186543426616293649543741875882042173380956119737322204906042367710990417544800462728321639324791151406955584010061660628304199783826293959912579926890912970052339895938137461119473504729752401310289221600181057106776643382986556174592325963163204522372078262520351770361427042538592078722253},{"N":28161406783438289776782541515550232234219338732182263528677255680862818571394539837092411279908340595856411618560352096707955778113841586575489526111758509944691006867155143609674220650793817498419172979829028602046249597147507621299153669762040424244341554256616377217119563525915851719009321686306763607672801085326365691030132510560260181669852932393003570340516931927914922146799899039434467722922041925474101320996856938035131446584298134298675299397155375412990353784006913691603024110559796744887732721945933471868150638226543773483734660294313186275340618342717882057017678734282256333631978096376709630195493},{"N":30290385531723706663194155723402482345164001328034021287910161482488063429892351584916277391109894294446801833020074687889362652138426091460224301803948089690115686705682426193759251182110547546779254274419781083851169949275087832187538168815749507922889270386625094587688358817642053715412200458038741309360104964334706289126542952674791148655002683650712544232003067953586569445443104249283623297733191839471659254940888571771772980381177972566220724293577306168494057111878161156955456998298372496716136324267059071403030493623531599851487444134766104137251811774500492630476212318493040236485031236879687941684761},{"N":21891762840438596060416034930044842446937758373617708235288562429502315391645647044939378215035677465574183685957522821315454029977571728750605988329881847569313802549118091978526315133726370633285214423147938264418314863217805659876561184725718735591303337902948467582966199323804114988231963307083517180657041313131586070203747291724798899561367507615511932716092324516747320587928666160741969956121773346301706809405054989477031949248189136343469258532041255092588255241987397760849320759799542054627513230744643622791455964220513319415609245199516100422991698341556744298439022451385568791478794837569530013904689},{"N":25360934335416714794999313991057897528923718232366653339706494176825638906694689891746545886915964196582662458688535283322287088397853865709093712398485753916163063777301385991907720781358632265326870516346689492128442283774600103789825609570294923480202759046857115137927714980847316960609776972337028789163184648676367675625026306027140091761009104192786329465543720196130052658782412428125321357130192023653185727111578488774341366834046035305712205910649341950409228079277410881842097288924692206421126356254520404943323384573694119449632324221088061482676921038116252201661916622983158849603411299895152156469481}],"ECDSAPub":{"Coords":[92492306118178589821640584737240636977398594678247616965910942704932180187323,27954057508764275913470910100133573369328128015811591924683199269013496685879]}} \ No newline at end of file diff --git a/test/_ecdsa_fixtures/keygen_data_9.json b/test/_ecdsa_fixtures/keygen_data_9.json new file mode 100644 index 00000000..a8de286f --- /dev/null +++ b/test/_ecdsa_fixtures/keygen_data_9.json @@ -0,0 +1 @@ +{"PaillierSK":{"N":23556951187256713732039305973238937631620385080790804249029259279472926645248156172448686117325741554381537031072742207487366612992119859269685828207319515666102872111546619607137952974660084980511684952594879342586512197525409799350424247192892012163769784591542546626323584978204193899561072157767856334488337110957680579926475975853118319141371431419486620931003438350760541975587261961199260033262263106014958269750801811225868080849204705441859105664948039653986722714354940941410686784948916936213417318953574086609821961649007609305029496977916873440356977063491030736996785241653241262171162950673703965399497,"LambdaN":11778475593628356866019652986619468815810192540395402124514629639736463322624078086224343058662870777190768515536371103743683306496059929634842914103659757833051436055773309803568976487330042490255842476297439671293256098762704899675212123596446006081884892295771273313161792489102096949780536078883928167244014398007880035418924512439802919522545971162429488284495511123589735898176411967314615560951167680498762245290107103247665264239021538896936535776503008936989564197311594676749958794652286693837906328405347303453168324582933421354119370153620792868127399582238307388290845826084982273715238320371789512667658,"PhiN":23556951187256713732039305973238937631620385080790804249029259279472926645248156172448686117325741554381537031072742207487366612992119859269685828207319515666102872111546619607137952974660084980511684952594879342586512197525409799350424247192892012163769784591542546626323584978204193899561072157767856334488028796015760070837849024879605839045091942324858976568991022247179471796352823934629231121902335360997524490580214206495330528478043077793873071553006017873979128394623189353499917589304573387675812656810694606906336649165866842708238740307241585736254799164476614776581691652169964547430476640743579025335316},"NTildei":23171083837957860801722218699383337900446240030786871268841926233540016534306722256418697981846104677203759841627977766724259030420015851980511088229043403050763668171722648141766116654882525867416891436685059276174192868946692072206824573955678962077288068058032958478942750338128252470165933443869447212456023356245726416751721989152798706366691818486325734110680894776063318626260722657549472271184224308146689662638536101291469177898475337027531732897213355102104990685266062044811809193138366772764276162181116512200063463469172637189164324496242489479899844513951546392297220122152709400797483802836017803985829,"H1i":21638702445456858422878500352234793329413106731788942261751796025224145517964611169394617788434763506002565806620170893339110273126875286455095506459298086020278318872581385674653253080383128797980439557511752718258375238388481802546638936192461482797150514683008473213407715728694302414916863995043974867827876036585791719812271742103323384468954527534596036617313432433874380308883492321501736879178345427074046787174556058119038049586737477628511165980047288251497278209275581664775606335268904384984155864116270266473616061700061527150495070719210903471680082400487754898061609554671248760480063619759950744280907,"H2i":6959317283624626561280838810011851848606573383456333866356771642710009365943896928686358713606049305764133589953562485262421030190625379899341516940088176438653144375343629199857524649360799157617467464667207079997090732685762910728717721600193091207478294785009859545546272657408615665578978698966309579302786158306046780048259033960048367018506262121833776982527433736628482989970739839626561164331780819203300647377931749431379962789021848504353274218995997754499900534324222498419599756583548358913120017762065234354717544865856293340540081744252368993926137398125931373959455585431506453093937785431907339954440,"Alpha":13574006706417957056077957500546002859237886772123475083552490240183213265102942914561427555788089019740187557758523104148034093111134195572774988376545664259084085493579018375214368878394201292639124248663231036094266354045993253702454761322127283368164561322962291121915673320665176164698579733568427228712449528118218042801194849040004092094340041689965299238305003310389116160166322192742218480522811124319226732581978381043085494425787904868158646107577314620360468133910219026945266559424739018925800183669743020510686872787161359673680078424856879330316946038977975156187758657754916647195952759119489080078084,"Beta":3368572885227830120577337369914133457954673170789924014299810953126882375252061941063409538429477737161503355044422594289166726553421108273444628835207076905388998481525199177460052135355807150845974368964396209956052339025117603882433811910204008553689431193960900045497939995049985843980240798455794760461540605060885176073044704876095455728570054989601677144272877477653942017661058880946527227797707703466851280934789334578626166056255605882682371213075797882607195980076645623963544077163777455726367735193799471012661175632079566079639704823191783190997105393776729447873825100310388513305477070743221351214500,"P":68535364942704240790896977388939863675374525979478818946218933509914983623778924130863062343561916329516036364051478791409031018462450613142104561714563338834772052464988198675987982381110405046539869083073036988987955489628700300428925031060067314661013879749182869023790642000950206163631534989100861038081,"Q":84522362496095820454029546944829542873119792124696293174698175104500348308511179350900115192847900137100128758809379248607332881150168139052170628266136189327661812445796352134730686565157540839761099643758192538218750630548317611238227003594490892837688233398841113625299439247332438192261642865661897448091,"Xi":97305501735984994614163987963736012825588521267518905518720331423068815692775,"ShareID":99910913777216787121500121711080713911605201308487494263101624819470958719083,"Ks":[99910913777216787121500121711080713911605201308487494263101624819470958719074,99910913777216787121500121711080713911605201308487494263101624819470958719075,99910913777216787121500121711080713911605201308487494263101624819470958719076,99910913777216787121500121711080713911605201308487494263101624819470958719077,99910913777216787121500121711080713911605201308487494263101624819470958719078,99910913777216787121500121711080713911605201308487494263101624819470958719079,99910913777216787121500121711080713911605201308487494263101624819470958719080,99910913777216787121500121711080713911605201308487494263101624819470958719081,99910913777216787121500121711080713911605201308487494263101624819470958719082,99910913777216787121500121711080713911605201308487494263101624819470958719083,99910913777216787121500121711080713911605201308487494263101624819470958719084,99910913777216787121500121711080713911605201308487494263101624819470958719085,99910913777216787121500121711080713911605201308487494263101624819470958719086,99910913777216787121500121711080713911605201308487494263101624819470958719087,99910913777216787121500121711080713911605201308487494263101624819470958719088,99910913777216787121500121711080713911605201308487494263101624819470958719089,99910913777216787121500121711080713911605201308487494263101624819470958719090,99910913777216787121500121711080713911605201308487494263101624819470958719091,99910913777216787121500121711080713911605201308487494263101624819470958719092,99910913777216787121500121711080713911605201308487494263101624819470958719093],"NTildej":[20539613942852364097890357541124859329931817468396278432713468646303963073659662742703665137736867247354367523800071318544570641421320510992705137876681425752810096966415479528824625129989063402576946505816887222102561441464103605308386975248012283762854115939987945603503283072741824666735245204091384515192454349252950007899626081034649919068642018312817079235168086885705851677572363277983076857313399016624874649811334825694862350059490166759704819411086564625186038339099281295128259092469609539775245598320922394808913338827772001777479207381548603315272620456484970681705115865233047669675602308688791376160589,19461028678249357721701139019984545699598216253588699892259672060166427273458875608319855785678884811755179389274380053495578644060470229307987007292965327985966772681212738091909180148035785695413643708212165777295662698493311553457174395686873169155288384255670661532430410131045712913078128214239252258473814281283319061613409102410606683119900924722782015902970301519339718368508022893331969649513655635811522767629123667744907556474126774472529158147258343482417188228144974952598132795041139358631852141986745214674779692377899411672630850213748161088638857089501019216868292821676374914063004957409393293909513,23815206664659393600414832732918591362081086959256855451108811883313935088830793690110550688160373127903180149093000695761674277348327575728255258492470452704258920461298225437641154249481888087192237143947805411796310656512191138629555279666557122333244803756577286887501632314162770617970064401783626962319950524158923845138939649762251756759762119774585338772559055859463599094869423262313306255644927649977403492926253217608523813644206820059309357940964633363130901166057002430269910921882664166860038861390305316020579398429144038386189480114288127704265879389663380565983482028227028306457603727009698486364281,24531363009049563762536664273685630249930678743601473345646756718446749360580428942513295608401046098557387011967587876621178423418085640157221932880387840241062539585907115950101921176093340357598786734576629107604766098059509560466283874031181440387973563913507733219768477775440248994272649062713092103053254889978195382189063452107439308150731662099755008823588080977928436274879799764825887538020606485093127463680041134931480024720440536560752357773730443722294290727915022250638670491342013254556128005158924861347226548459626859027825687870031912255326425000561908947972742109607669897905187712585858898757609,25485947141960036800495601740358196336268148055632283852581334267632567089581351729697672659186150817483946028874699734841543360085445274610946793774678284845142698994270979141586640525566502581978495871744643885460820923876472270768798335817566781711314773489485670479771252073613546268231833675772584402239718946768734191504723089294480532048176604551680713541748910822012363078082926628834536634899606309021451196325472880525430322895659546741570135136047631868000597393506058143850364801619503318165686086392731222189995494225633540472226098357551602534472541794408218767265775850366289511546336446350346021282237,28927199961592509462716713052933904239681693743133323458100757563361525410670677174848159248824087482997906403441479071298957717300803186875289912194352025314864665854179681659546207985006650252942140268140510157106320849846175665072784539119695315757729095462689260495430463870222739869312073694346079553731438032339737072477343055235278557275309616493517920166164080693605271556685355062728635594753076381152709174590915306592547837200121302421882042327338955791916538647734045471143845013412592155994390976714634271247514800401724247381959070976404354024140134277339724455784411154537706347451440209596089260579033,23535119694477523772171748044630208131923028017288499693412795663706886468394056769073862998142660508474676105711590469240299300182072142961838102383606369450702330959729879893242049940029310408964084662077585876233411878169942718467081776763994846585950049650660912827541883992039288017630464390592382481783566823924532043610685633953209522603678841504652207254189077646669746333277037092923165111872444873598439940966325805716105630151638779643981500665152639984434504817034412086671254173379166038071662889121653550757613052820175939040916661555723756176613161036717523938816196299007092417098079561970714605061629,25950783447263038071689830748627856944354421735888733670277679971199180982562433131778324823115329151828330351648021612294094370722267669972986008148650808031918722892417970047773133521052009921040352676366121022268583455702531977371124075420219730460605780729481918672698487964603151661149289116143779941433746038933525309985350586367303720987487112290090195247099032317451409521767630753382551078895196505751734814139673689437231496521554705226938471456297964527299627857211400740652357956604961830754401147898467475649318148547949522809325493238323065337997986089837089904293908389128632840557033917922339991780941,18687318215344566555182740902454336428592486945614858718824661784376438207943593936740995084200358460316665071770681463630810552799361606949595415859491617650913620153502889285378972038135570359724693463761135116433672709408902151793979112715679738392883186006369274528906256519536716049908878346476950103274343269649895419042195937774381514132210454482820166758270346958078142742840173830940449171621914508101385104081796180941351697633772994457709351610367195330318869580666697900958479010130985251846923421963647318437209519428820003347978947799013079168765159404172743072632243706939700207639779907975142224264481,23171083837957860801722218699383337900446240030786871268841926233540016534306722256418697981846104677203759841627977766724259030420015851980511088229043403050763668171722648141766116654882525867416891436685059276174192868946692072206824573955678962077288068058032958478942750338128252470165933443869447212456023356245726416751721989152798706366691818486325734110680894776063318626260722657549472271184224308146689662638536101291469177898475337027531732897213355102104990685266062044811809193138366772764276162181116512200063463469172637189164324496242489479899844513951546392297220122152709400797483802836017803985829,31343857270714098359641269819793471247744609345771779520849062499842222751853736635128030263011267623933026775894009843057499037409921342064326054830123558338476304900840753732976691522721379417037190976719048367738172877422341695489954487825668390415147795382659776979019893183466662138357984500601883268994989224933833342232607751640920642550766835871191739404896219865225614116435580799461951708239551693029017567595268404121330207564314786956323833427106966279493560190075571199071036639702485305576334075428484139050116713328535867597124971991546934922511844853709001583656359284723717084806850145785405536911177,21157487427733991932564510362138492162446873104287756897983482468142107066461483198236006898398559574298806811271053872211924774119515269456039458266616445024300383802406544466004007569246261860103312006457776588799344222340569710165666518367783547810282003032927364478322210948885423703591814633243286070072754280297773344097615910071723846039979528910869815670975142743376293197136856592859188733532786144697373533341877747464753616005694543102759948736736802569257325101204596297349394258616025918915521692968786299735438817719576226325356937526633071323693338940757362235570825853130085312301448111119042363796113,20871071186633559430638470998115518791893553646420368867902204568431630269565952322291766136370093127894084798814242475456617969102595313205728405129168253735048454253508700456761223106599134617920774227174015124829476988377890165462875183814841087993485125686632410376362585538078467534668954228084080919739417042353928509644795709201564083148094079836306167650314513450129297783489119015593642581024870311297891618816623633162063381775243950740681581620150958717466968747843706102214690157071025611480716612116918336154774385432247274600064909320680551901771492165221773721500541614228617829117370166464409020423677,27392140202372139560911530190722295626016991167776777076251374167016701252229100335980281077736021393527993281083564981442696373714433732500818431355034758384480955155409564373832745499649881975977124862697809360957420580753883129965594447943274206109113518479198329538838000642865155652137973709624008263285324174285285129803357738290385065522262059795474318914719823768887144641758090777562619592046692917101170170722723905514971631800061092086777420826999668590868568525034863406950714560799453233548147404988580929389926995856613912328981176466707497680180241272497358147647189027922268738449537259460751070153621,27430458285560064975603737623690566617914765114564307656159371148918349993794669623672608540855772729568670170546349850367039352526804750358257162362490778729908291097260480430890476823722553654389178498566668573496227008913481934125881578164602723285712928871252207939941804689355173665470036039114037118963971589320342018774107583274314158608546842149328506685304690959566263296291871998398637364399822435359987280203416832697098234360106966146607816540746285266790106830402077656904149244001383199485864465648143588026246539864484902228828598281873311925831114015086450712030764672165915248196209070047454495085169,20958576649034914977467969756965874238364659071947031154211972997487243461262394795340258789930977809611131615831278870909123144191655991893039673506539165135637011485008482874021240555941833074286915507794874804218274011487390148860550531668300157069443584231888571925159473970195937554740938933226402208131160317818926784959057391389980505131685522579677264162724011263439981256344785140426649255485125637348357522582511064347878764724812085894898146080695383734063354384186594813474135513405234523117338489484424618032520881618202129068318264606277435174234229102947510033247339629069254901430086639327996737230861,25673210614761004254141737312053451635018146154378993341101985326929566270344015265597835170941666913606119762699769929117810862190840467973932188558749547474174367822508601158829928161219529997833862214002106486508027112865708012732033692783629855485545330232068552007350877531730729790772847199443436084419382562932662568511421420283558235026303217907581598166628555941188586096538364407553738314729036218493332920854764055946289816665260688813327844579390598566768671973314358968068459214729157676432241630688442073088681756498136814491310636028421098965714509622937097403466307515165856202257786336739101389349089,27062431131775909264962122516003720577621307700606752850978674545503762322327045712593154396229756047740198870458644425173406714147601486563284216353367017457813364860861671576291918230182938220436949095109018225648486931358793025228571750572403143070647269508389021099989559676856968002395615757641794675119572488971947338527037552287756390904188517823120698354616567162661395526975254448758091053074808436661809101512025437321837959528689272191238705432334775200965152419124620293521962173467865862080429867958898040527206234108561471429991355210673373595922083144022410446012714221026174220695995286555692560595981,26101397013404440939950108603288565551073409553356897393691328641679505760230621741096317929709636865532238670826796537369580597665138924272200816037026280780915781305836081579178356868109017075793286763556497902869947712856535743263321959264839901002581734771178344662509473227839268090064000382806059250315977679226653239225555007655990623485545590336008766750972486014525144801720879444739045959169483687885427725508164188831961197284042818573448808100923870021600896976125650269597381009562192855793477760166114366163011349461311146903814241124631772470784181050979028948750586113514587005436500903242591757553293,22437602225740742482465534898349205983133213895660550238212001804732032977697798637757435728694311659299624886491819969612531644822478331097020027346346025174540910579800256280214031292073085792970245723432769912206355626120327772649905875827091190500315669126429992547075064736037570537735332469814000462556933603719315364923773085086614780916637137068518726889173784282955430621992569759561719528189938429235007732504425905045067985337249988673084527372002559031400047880307427208848753891291386460253720313523072063965808016289774609282102972264056704286287440985034888143293816594327214769326166521224390393446693],"H1j":[16370062914568124684409954423220013634799944354368183091925443712820668316759795091290952642141219645055533606292548565759917746455430426634828957426644826424037530474618159463204943752577732484149675671820306363344833458247384057865310742915406677379586789735200748327711872632191061145184949312294612467345847214916930759229195852858849386686352293049987465485866498220082468131280135383612600619493426252446949294373638968518891137429993551161437309269629260378927918725566711632082553316166822070110359114229533322390061282040482480263995079579444943917107997110057038662405191417861817663789094790962966996587522,5792666313208572350705907594949414590804636531753541567087068453778543363077542142305947911768781865374122070750607847515026168979710170113788718287465368491981654823945993941924700096393523941715256095048825025361038086570514643251828085846380954791657627403414038681940866434304045104130214177360598208974353162505514170835103706979081795485247158115653501838694614859268884296606546104394637012764653804556264770973741677326601115655746125293204398034469241183574629519235451142797709676366285591723984602961129858687877266469708766607187000988412118886394000517917001485137799190522482532376333362935442751367745,14510201356793997359892744405553071944121896518459738320470368478827891282273167297002903311912769777071155241288755372185351193850631471716718530488323104261827697027757019895835360274243188719367049075501436153398857359555924247334095665350350441220453460409146684994664351725204034521761578947269005519140498383255606322844603919000682223940913285551513356600061526959181206093504072618536296265435830192715190515397064435874311583709516596584871136822289753837472532490128304199643440789002058080030111113389709287097531544417461853059085059819958060220257218705882557929843952675556987949500595639655528439052202,21994027187251658420706956116678134303619268245311594874227984400819404446053485122189884678892175444688722527594580466254690437593853064923544979570444911946308283663229116693350631331935027065689358169246815279257122823014594309629197723508317910829246255814111959552337648906237682616732913305786178221005434606679461852547394872592127050442856550471832240167936976142756988960345619830477159914332536955389792251800932867389016006568741180137556936582683389834385412181167798283357296952856933963222988284608097870458140102834156304710781157917296313315513842893014212063887070100364867105131178923785373561146050,9913834538682656788610829579771569556624609911472542281771864528920206652057360227595914694025069327892774241543292898072673087864732558768588752951687639831868499912733997907550450742144719953844448973554109420086839278177283587750852958353526057789017170152122423018814264172807655239353760715885145548388992476483731471865364270428702324445078126354834888878640191523880163270112743069852403951565444480363239177556818094412397417215136415082364220806171351930690164376890892251369372868624028034980680685551131786332553623705883769998271596791035214982761974622986462384695349153129828098712177799482890430520965,15464554656029222110560140639422624868539470020281691165975400448606613120973644407534365935510334228227263162749065335291017684520353168923100727746351715681760916446206803485743114757577242723665933043744987644589191843035807511863595701170012104449542518101585729174897996392297770818633483533801844500665798250501473521227123975005972911918718226524366806206633841675388137041998857549215313632375036761617534744890091542919972307048750757690677067439820416806817051344016166652866968067639055986253789416713411110543055264622333767216550525033482750914452894139691102713436731472281130988207399023815239852528906,12865788614422531768878171769038267076266208200249164027644212721909963715015912538682157638127903293282023380796412378159235431043017021949518573892381565899437599164703723050587964116914107635838030249942901605297513982608974593500166572552953195544515492725593747884602852061628830280449190167844572097543184555448060083835007200101317266753106995526429573085540857281097156159258319440414895242242967023265742835942344738184941128584859242462621792495405423196954908356769683815889035326257091875874458718611430785903143039161526479973858541524126951528796262613552089943663340076548393182371918642954593889432834,22194516202811321146792934079465991238594712937226367504517257988113211333368349800836879103947252405610400726941861867633710543721876626238467090611506859331575128297406631557631820626534381998686705168632059305910804423292984195597625141279765512951234238593649775486094326905655122386938572411401132183960062730500896105597665702000968846572795357957098192758080717128908256523579293163137417423771381528097786100281383788052729825837521137512379280310081930804124457815661946839040621474089357381345723789618079958299474682840114875558952249988571746058484000722421698440994062460208554903525444210802321182968014,2022329329707369117437055740094404969047484980501833952214571687130852032499620508208708908589247080600189902502365407836277381678968110704345539053376355432754797822267575827372488857681103447936055038802753292113151984972961755143427625893918328299356797405969999266508287378495280713821635381697950988327467894890827305051792226857027384943282520470216088404776455333696749084292781033264737672933515625823807581567568754027253581653106384383593181057349330506068884659072076739226363616897242406137010778123983315619151551375977509919335513557274798510437948502408760645678633359245877721858614575061700591393721,21638702445456858422878500352234793329413106731788942261751796025224145517964611169394617788434763506002565806620170893339110273126875286455095506459298086020278318872581385674653253080383128797980439557511752718258375238388481802546638936192461482797150514683008473213407715728694302414916863995043974867827876036585791719812271742103323384468954527534596036617313432433874380308883492321501736879178345427074046787174556058119038049586737477628511165980047288251497278209275581664775606335268904384984155864116270266473616061700061527150495070719210903471680082400487754898061609554671248760480063619759950744280907,20932768206097680299943959313782719928339866139959731166252002876096405653871733170637914957728294590217455322823662941811142831487382716004980657707514358763150029924714520812685697751484102120909926147024006189544048800446501267477163792293393919588659127430522309503845365000611784195390022621092266420671288509706282186373855655358090019051530324622779193478505342408854462043136412488215465955955421082850282626458587043647758494935495915329050933653468179762936320308005669155322055934931071589853638981754901315764484414249149121368560265856082417024956730272011998498550756243974623835494966366962683389714964,1365816667585940330490355905311774458514715320376130020996515573937571923987574784307504874484515899610747050162880466334946062918938639620242137371098595406424267003818882220942016240927776918797542668204898851284066695289242978919397682088055368818116198595348273129318762376760634794532531433638073562846988038755248023571028829475051882101071203979111269507596248527906600986677728810751499828436067766182628039345309355341295172437424660504415028913205507139100147921515616240146193076677157859750716375066201587358526136840334151066553547201088947345861316322897488659331106732575557394540428972305438213375814,5703448175361065536885380258834894924349694750000788978424055908887487214267289314410654116737467233333514153490994654420800717947051017245903088635547080581089891657444714373263301759995815635072257679749046151543038146531810310826817366207696928190231298874979984114964348460891792295427444943206125809938612729939665048974349693961742238426880015130297226114935093282566300228257419316454068258492582819117310017835605391570376283517758701794125467889060184214275911038527696714000045849219024045243597506828846590195831908281658454892131533791810760325400211405258812142759529523572815227489710851557846638137542,6412242406353564485058502679404605624009190790593030266854505291800626778702270387175472290319448965303250433574173375628339895100997329474893279692868549940279796264731093585208695625011062617868491258157215447275957107991387222489580499373804335870682739788296835432969262878909434810429803264643527538555130662379672012787064972208117475596665593916782896686056579449802576468324812730306559649834202797329883549294599723290402017221639617907711497472325019619452322282704828796586508386419927496666562295856731151167316262475184222145101211618002798513055006067228431048839763646095282531119806559583105533794495,12506213831497706601305625665856619892819919408470741644330076368184175310515183251146177621238406207206410185643656979107225155831507800032694528257147716038515158570256044209419514879851010106278924359714862316802415670557334433034976750101928783991744583819411313589306343712690219032368416678985323530251239318661396466801994308940886752046080901718450406046375904389766893043894196541576969928137946704159382893563356338387889137855413730990126192021766856444171515497507122402917749807424621383187173538906785892654668489198127757882153223185090960714890345630801099413698632285321494907662894187137142803150791,4340320683992731212484211057800765907410470847269768304639037529290512671362801376775768288042129836088810539204858832843247178308000345604701431226310915807542068901686097542648829915466491213307097734259829414895234796525272600474326857346693882386640793824277606043756669695477090601330450743232413209505539149906338741119182508496705355703793044044384724643256986023764031438551900073624644692938223394706241422593949897781383635695299729171084301185179708550600098470031089086344919627503113655735768701217637285566867914251954499504690075652022468818725559007318841314414541437592229352428286215595483845053638,11992304082547451264970842283976418853821301172975086658682116387543359417074268643442593212371361490968819128789238354995117145993279593426471336648259583293294202599078859260437992548184464009386152763827946804967424362206055435693041324410893236957405711025923054702040161696386453571055246924713260145964584750230359074777621444549946362450468684233332414284037283955916761049858000878784786268023500095161975906495439332741618288811384519280375489794382891880648564800750663555801045203854227681083222146920912455217541211811955477767635787030014152643158711960638325867606918508708678622347924499914937535267162,14695333877946105505101457937623624377562698430478247685331048607650568913937201633971254630714736577175024535322415669442798271475956496536083972430246897654017678266490639701809689918981250971730052435032797344400248226649579239038593902835536123498617918666329121083751772876090103853533035181736615043011673643017303605152279678650202512062770466963460251942403425462061196179491356440328364636048438335959347603428717042954470887883300891927932651483741068303515425618933688194621659816079976510221005329843899476003615861655015952079393164902282608831513778303062716347528913475870793908798463564832083549613643,6361624891550612817090909815430156259585522002511378700573226127309539860650523892977168943678195716824260472829831132024282728135758912178943090813161584286046605117495775878170654691942858452263763077967647297167266507685944611403131069163214134338169098006751105941940463654618427873599267528041887836331948305951890335742121311832653316741398094161561749334956600724220433324620401615490879450816097431926849306846384679126203940987154375373597650036103822699248044107851648286585837187416880739896147553285981829664828869063480707437325000260106329487862878699057790666160151383639198420965781777521408308842299,14948927140088320458060089936345715166494298631495857212773926944790409869483957673185876995292328343640197788589621807184518806705821872810447516194927678801617268846361533345460325613772855110322242304569109406957894646727384216069315325052819333705539766154972989576988248927288284161530384846682668538198851543196833452065614949748530253693700328342501577900059842225778082026779632761099626760985225309957646536118173500439351182747667021029407125807666947346322131872894915154624415940708414296769044070685030466034270063053482191494419465005898644603408406165778424189251953592599788015054586521957253320449350],"H2j":[9653640790649475435050720061635061544335995170813227062007808546473167610366804040613054457009646767723479128021709179513573358845884462519136809844401815066012655857973373223748942767836422506840658738556503260986697250346171921063441485400421533124068250604530993514803166454504801884882297625678932746326066096923436475087338628767636689481829832307623108408425959669915171224014581673426602770656342925462023157550194457295116217893440581116140543598050947318929500123378985275492765280831578803707538206440354119287576298034238031692982504012470196898579719660373199491817717767711160029710911173725338539566802,3578111860663702772408903345930659472256129868015762875031051677614699117364424442270785915866444756532836287879751640816575659073006676007210405202315496945346450727441553016187592354415793891110773645408147683476571812485850037389853330648238106038729525075512542830213816094853869971661719959033499816133612736102442725651388405183329714325258711655979055386253406319598230253658818466953001815116530962213661362799968355793928849708876651937113231862631691372187008559216884922263381652908899796744393080985272287681952842592674663712445064149288160957033524932550150413325097150870149209345404214256294282382085,2562656890570835296352376205216590519360952576353253013086344012422175466058176642832419040937235521572328705583208834436813588375562745525224328564354560731400723267162764903064018742843839822445601315505274421672289602485557719646504320106522113645676636456687468751723898215955665240524139836668877382766583475339565598073690853848639545227831264115164596396262772422415214665834769274554577301336288865874066248890243346947740610544045667761548206600923673948174739356732295677551749947395385332556227074205668024351973201205328576603362256016900712683688241615565934460363012498930253514800348031700419220337084,22298685304249156715841839507145325522077048988910268345524279200863227356693376151033928569980263444962701165900514081299580440300365488019578288962534096517468902687907593109404000193096117803450936780948162440311950526862133749440555125530434273281017640257175046682563772712146188162909037424635371282116160809281350332585723737917537784267577381007869736550494661878733387948458251550312048040279754696568539248453484809390032249968377837207868808482658171733689439009562188880777607125039187467565549644537971596666666932158369857160883674108786200103009448463903055431989786220430290067137368612432640074310237,5879475324785385886080118453628099122983640585548725925692818787221734315336181255707999432375105366554548265736590343628955580077952532008988837072008731794155978542038914506112861039350525606157951017828660604272526605818549217659336563240062224484914310161520768881507503977620229908361541865095980430141394883457555144123820008061398004875781145432780438239985999952863196781468403423593755390719871396312035325131303835880979744451815683310530516197085535308856850866798018523735074120787646575912319226234213646284739550604897450763442470406797690674949855848424274918433854009972115369882751833585035329242761,18385446607341413929216752317617998458160849115285197433981133872531647462267817752048089105851349541660795002685652456000086108157981979426453705134803682299691630928200421847304354380350114763235863451959398215394354125874494984531309790405988904217354164073819568789120760731377280912128364362051769093741704293517942028826498663326655241508795914202031051398724638536523567800437872676476082333745719105291491676453403521845621182329449421075607837301738332926110019535833222421409565228043580701032497151738816862657210572819375918881851411438625526045192015060739626198734346744421593858157488507552447503219157,1543023308301318791291636723263661645234407352972693347930324541592073282303070472660827743672362126204249434834670307886593868303926045601951702434485524524299146190187978789568968092026789881246345813079894138764374868096047892517784410005345559357208978859029831295378789933334638460830863012154730679683049737545160281582305039520027158141403805442275432519516975114987511502563484403828987844187725357101956491714139410763551382100998178318863295224089354110436171289236674317711473441156004575613857935802947903186710273135122934512388821226072049093290647716152026391828419205457729234939199662889356527012444,19612969155814925927900736991694631498815639143900750081709470615537990112217002271570654324774711607889679093067885009086620212727925361021546388555967618760690930383917718167829905900473725102007606380323545403188303409627969907029774876076466652636827981089598601596821629485556381455948439528301393466043329774616323471054547330305463639720319551756652789237846520745512886328152641158526571443916940675394167134193466655448590323552123565655514390433855054114283235652222186673800138041449545987929749641868001910765212175435331820335256408276886037716378072029444719891008048297796893611911457701948988529229282,16728597479991680407332164223276251930971882378040601546182090035388885277790620642130984559023085396113670088325023048100279567479347085329073035696608554975777409036805727779421519384442869313567486101701856985975948368091166211269762554257345698853374624187196304439193724792774291722910128170261256918581442838390388813651239625403911503915460141004046718650178671549506593787333200145941149923809156438433492770338609398675185696331933468246886804722117355530728325631706711888199439210221397335620762682713255422110226515677047306270190770133307509623731091673964502293431264279055367772707113499782043802219072,6959317283624626561280838810011851848606573383456333866356771642710009365943896928686358713606049305764133589953562485262421030190625379899341516940088176438653144375343629199857524649360799157617467464667207079997090732685762910728717721600193091207478294785009859545546272657408615665578978698966309579302786158306046780048259033960048367018506262121833776982527433736628482989970739839626561164331780819203300647377931749431379962789021848504353274218995997754499900534324222498419599756583548358913120017762065234354717544865856293340540081744252368993926137398125931373959455585431506453093937785431907339954440,11707820384786665143909181917722140695066077204138675859555940823963085499198625584153264077484611920625749300043796981737297557284495008476240804003977980903028035986014301427047695461308987163082644181568819427026377861293089760745032220979974314071873695748444473344481739404234865330820136242966321355292830007655295383627072182012764804101331409332152687101319613845603099019594628684448783718018158413013589965095889558760502141979036830513073469713570347578185733951700672935586145889495063730457422516713768592535269075934288536062686021973569079600458124449475763651523966025703378628943004868525425132768470,12680113365919882057574106113475868522128522384382601197321116786250024227710942753687346378669117549887826210207932325610070970266526443555090342822407043741408930676918514338947859254583933603158241276952467805479024344654828575004834480980171788527657050724406198542408746742354531228386476751247072501617975174749412587537766151828306153888252035411082379552917399551115964687725743020641384211728557413837203373250893065347048255589312756928959773947595990023044227966600250595372063312552514516053386563033360883348059069724261103859193470298590631028566611086928803669676829225666250863192855787196720603673760,9019657743968669607069997647539968262488442864840563257526073127843215521457164945521996034009113740811008633126128201485876365964359243077677187550395794512954090076458031575481109943534530172796807658845833964496790520042423061347000207701119849250007073432625973802817311058171823571086584900654526615124913824393095137876668486739795620319593113487319306758076868523633806281732675535191877729151172494277333403640038019691517232275137009983348569240826245496914996509643617684093222096189728055561573909735610063401084000594789204303691795045753669664876756897469727730211469836756344045393712182476806348262481,509727692658127329234819348282810282823358222955712460979035976368760532139665502509369544837059902335508770138210475703837249689840377266421270410968940058538125244069674567645496962345390684467242600183265156396927471901904730403435725549974213712745153254130090979413745442250230122176329142735628394058559735078808655502950813887104168441824680204081093532561399756958380811786995754253778833219233414597390819387529718886819478101169481249247654168746478268826094117295037052091370216680279456693786586815595643437522530315484348520350527079378100131478937805285900851443697897872168020710497135465069780807687,3842294189873253197555038084451026657880884971357471477404186912118522652991181539287485996470843289095459960588932515934990566949413638625169611068786524327230092661471599333492933504858312443510340452825109814219748343465626968500133039743956522352452046474898271016421645025612565409422475581907506677274527441400119913285024497410632467771786023570373229380492185234340140113773065511943229164821322784643171443642045254567266530741214826934397811463635644370547054062567012016231228876473774669826378368361454200858389911185989849447377758286974943747417740672897265471383352127822433439855380640722238771424561,12605457156020973444763168611522695283402376793806466187139735133742095649198553225011255516233464381926302993187553632508703365300132776800901755737316341235931477791227746456204649162573568121476427289406145613748980339685673661511024577823438911510307584137593479079190723698666793670318162798116104492476114229973922338166221669934104784402698512349426984473431614385866651807327515058966935011035923319124790759086336194395000632944700277782112868323483780168144642250558671981757792078139349701070563555668082796938131863328410412160150471825619049694173807371104601644825755844313657731729068891163705563867555,18221138784555811053296911040444811422299569221370698341523745856400091281377839778678778328149110548534138934160836481393838346908432982920562116626677959686450236292050295531261923474882738697393510842972966810110218027601675376030586402861098487543863740705626110087204717386977952136809165092530095562928623301371629208844732733664526090007002304626939446606391205626126192870615394522174649688440887870385705569710809581575204639778805466412903927058799148697158251622260213645585723159916754663707237605872275846686566820885362722073881904277317597403167380835907876296870877478221646920284310430371934404822311,12694464409184116198175216134705674117698495589897734763290223249700439697747213221960704240817308024376618649511257185410755720163743943692791263666036558979570909072667619923266653682384882259644954119285287063471541002032435823410204495631358202104734018269537402171761572193134509812396214919229814690930600798504895496564687656801956575973479011431776352638782289114699743527186781919502658003154674450714069197242726393985114420810547684173494018605147976810102913734546162705259030658206284298418521349062777115509219489672039075093329236647292016824670535351144784388483525751068225542810044999850751665224074,4201765615355271720665237538919680402664127861292891404309962354268106831635826650331041297039291644925592311983403700464576600435518882156854904159089879201301912105368413055078865795374091914623189759593456721300785707753873135853357294442043908826331857106210726005526370024055346666586491341046296314798619327898858072624823009991437876242325624019938022318176060332738994176297193724805935694309014605422020909137014676945305249645201662101488974241605863532571828450201507584679493905057922784236072997143238879363168245889469038437561181276242698369654938178116001428367837409133015026021079614840533626761027,5693818583095067032554302348404689889827513405370432124730856324552577938645345928545249455102636900381970277642590696482249653647276002965730520652542065397111012479589269283364878130676178205766673654461574816233876555267291293343730094421360715866449358521574582941335437947403997555554148186986038285554629922609604751054748762347310142603219823359220130919495866316927224981350998367935679597793982889611172206443879512553133682522147111994374985808397513270886689704297115982752710085691562031953231724109895260045500479387280386873351701423764105530811712645875225583048344423503433093456461313617037044573606],"BigXj":[{"Coords":[31961961449149592290215619337342545369164998201385135329342844666166714363705,64636392625998908156106021830673034903148364934246785109426074897879798496695]},{"Coords":[13561027879868215202586968035768135752207534764402067848160241312364043370282,31683215740694624076579960720726613640416539517460242899883851320256877874663]},{"Coords":[102970472861055393328233354777448191839076263179087526130927097177204776801806,19849778771794568183958877322544789075545226949228544528619329359950140265115]},{"Coords":[8366486354279759555693815735694831293559828965602250556327317858912116678471,24456250444071880675953816335612932507033433175255559522554349078047625549678]},{"Coords":[93126246885046599201299142306317944158536766260090154798797491446571717586613,101632074177392193573512178573083324222329391048269493231849116848088552218375]},{"Coords":[45944473181199785374833853975473363930687909609574532965286298616052742734642,49106561873713078177518155217967815241790729328033604070651886838013799968339]},{"Coords":[88807289702586806295763026580879412609419986472794654189482668002118698433065,66889255218792877467551818840857264643456782872798377645941824720058728156412]},{"Coords":[45745777770010867130655637386117976632006388263133845103488205463444756286557,58413618959379828248439575493421719547880693819703454359788283537541749522854]},{"Coords":[14931705718614911512649079486924798218629483414127465950786381421646404878840,70853895869521315016717813866703398949051565204254795550601147911581008651495]},{"Coords":[31702825468512650039750289022997764002837389172468049717092331147393818254752,90704921170203464181329063311130512192295590723462840980995045506481351030148]},{"Coords":[108133277897421036808605843118854356978565880360693563552498521263092161957794,33994893650793696043114830343063091347849012751372498052809673503667071259863]},{"Coords":[13603746174106309213882605187834221055267478293724779491981408043396477605150,47502402322605913877968636451206238145707201411072573659819652572960084227380]},{"Coords":[21962637032374642863765173367353663611071785709723940819398260699915154728736,65876190623954751874122457014542214494068664571689464338691288646258987627994]},{"Coords":[8139291295258406047002639746372064115101651961499427493344848502049438028449,13643120656693319356484507306610353728697986968072320539867387334577150577786]},{"Coords":[871083651129542234211830236854985246175496411885064575219875767816674532739,100904963893789549224657775356884044157291453214379932308347421012612568685620]},{"Coords":[98028745019433069815621229762947408124245116227553507407780733119772046992520,60367568163137055112812282822118701471566204774343904929920219271364583776122]},{"Coords":[37332951852807254347441974643993866127041633128152922228434313154811023954744,56046459898819968566785812285970001512876757161864884424831574905585289505077]},{"Coords":[11223798616675111197150792218010453124916879614948521844981845491687409376646,70914747125199464172751182264377339815163078089055967502760766110580370145293]},{"Coords":[62949410140974969962342726366577125978516456835571210444108422984760191628326,55668150354406094271153240357261264601037343235231498038021007487545647055721]},{"Coords":[7611358883569187056502001665501128526153865541559158134839099203014115911991,87617845479447207941483995353359860120852817257735643485765526341493112597509]}],"PaillierPKs":[{"N":25922769748919102678415192880711636156565612427571550685296776086119205445525743826557545692077634738129321690187868055737306626420419536394422682260657759329710259802294458956279773225258250955469954464209933873407784778802101265717840506851919529598154066919091078766953942869622551929743069097967501533345363150709912011028449270819442207860620552088412428865900112120786495620291333470644949767300948329241775121748888220588626655915013364614554467190860190736954650967874940702908395331234632114014125372505065096924932509595285205788545338407476139436404463823043865599023326570565049384032977060875483209339089},{"N":23930233287283899271771864413305422456138957780711273892670074191715648409585503033095084345383391541524625291548041741990557564183855401706042293717552023237439032182637019639795919249455653535670614575331737610284863144094845900714497635996654401300216924764570210541950557336240993007183309433063094227377624710274228010652758134777897718742178998545079447283838099902510469006366469099975469096355736757507201973304413688395278990349533350163833514531655073848517781662614171483003731680841330633223244205178982328422170273570503713081265847261211618499950287557687314846590616484106774575999250148317390509484773},{"N":23804125140052077689856128298352557083678652474445385365228110453726681237860799979845611556170894187976654278582576364089033396218674226546868809651353049956675922595541689542576794678062495339422204984765419389268325283682512000995221750412104207394441438666051694475950049774094896290106430636216894744335784327798634247450687264677393229214665686649911456587168142148024558282134024448427550922487022680890892554782651383972136386958126051377715096556862662265886688077689941967157694195467190297477735450118736949849327358586935699405848605265912107169200547464609552395233560924746135866463084686118233592906569},{"N":27732731445242071631661957657712700411367090291795241371771965432140171981887215839890743735562516245338158767440902124645306227526755834590210240211292920385793070069156192085968959067158127765511651425539136016999745924428061397793021945121990437538890398656832618417715425504589084090095239114803460787199036351739230987513003864153861252195944069425337294669643857426654756086277471320443733998616523518289821541295617435513033264977202437153989318832642208143170451837926277566396048774049270318848738844338850668187024045715008196311523744942555689097435377598835544336914580911633671909176827168167136470690349},{"N":24540078122494262833119917930091872139739129939617606686122284549157786865278292966087938309454800165081094474899057524752572006230843959997841521536274236615511587750039832014979332539924539915807860222967109230298738770371871063759834296194059907031260324597353713442284471130560805946122495294807423458083635025189319558646442212459161798625793784738344309603016513355951936699928410805609866016648244631951643648288242475041729105749202516848107495430809184564037582943457286768883109270231510808158554549441157152513493684930416951758705877335895250913277012541968048511163986915876606316087458297080987346429881},{"N":23068407873896187320610408658036992760323120237076281539139801143529656493030091268390954927616119732305210576479622679524747880246080257702939099128994719527894439722828526117361648236913823027514544862046712398251734066527697676237348724465158893599560473200351530224245041596340220963683429881340553208409699594299261181212989221107530971303522686320513564226387471374456547377291192484997988606654540899634665450162274963086331783789860908282085692296248300574631527561763641974772756130570734735297575564567681595756096492735284720794891113064512997620639494646662790341453069978107064092657029168133504185408209},{"N":23360724885676198523522179321150194474267520026708517257764444663025119039638464657158724624502663558960702469988070676415660798425916276572290617437202837750858738892140118363926690520956187802097449221385283612203760207950600195667994976400493623569930090999021596112553157677485561299069991215207522767873493631366488446241092099654975621689119086509041077742510323711222260189730828492291459421830791540197321337933505867430138627984859014648102694909985043765241359798051875756951108870386862501048751981261038842763679815348130953290890391440850806363449637432840586263665690832227799688631446932015796916844537},{"N":25572476038149983843824758627743773292157542015669155545898739136432359227667585235619146413408812705275735125477228881724887114180658812229689479785083051083069428146070988730518675361280497876215801249358736365876007532614766347833762716625529381645528767502376159614744663698030295284120589012492759402983796882103200388651743368106596836536656368370930363045639317610411594882976032564820311800297421945366798108347221120736308176815503106682839506833524058020959093518528060465861144447540812579976237229589574562145541453749754749768478003306870660214131556451734687719631047077200787163529663274266186702479657},{"N":22679491499676926565249058751269701914370165376325885490706178594236435587374452393672919867257890172146499232592163563478749644823548404207107209183759523050603597049541204457028947474998785130219644182203008088877544305999771879137962239304258371157231174473491797491114277983084811723764080082851754276992307408859865524067180300336894890064430698022388669278921501809909740064260359142339540812296913591956784925745003590749703099702370645409020780887758983568638652737043891478141095930983089074418014910987946825193073588506986312390146214478478314600989393866198945700334073322066709926152728868061176019551541},{"N":23556951187256713732039305973238937631620385080790804249029259279472926645248156172448686117325741554381537031072742207487366612992119859269685828207319515666102872111546619607137952974660084980511684952594879342586512197525409799350424247192892012163769784591542546626323584978204193899561072157767856334488337110957680579926475975853118319141371431419486620931003438350760541975587261961199260033262263106014958269750801811225868080849204705441859105664948039653986722714354940941410686784948916936213417318953574086609821961649007609305029496977916873440356977063491030736996785241653241262171162950673703965399497},{"N":25874692591276389940909836821933328634340387691760211719857424847912710687202655208899136151842265948895002254373718724704209721944297143062448179072459504026936041473424765480639475272190837266572978737262449980766383982513621598580661341958135147571122513631091491976191663115339463730624237942100977649124658328431032849468551008597071378488661492324861414296280692846039598797857140808360770338990664282941023358641770157837364612463858095463039043959476170224596463891235213200808423306885708639894810932553685021558027739945539621344374072593175483199343233185955959027063970833388545231587659014590298587532269},{"N":21093015027631740022404443614096248522776233243516651444497036871175728958780883068858760981924585432192986275662870128643941927265524238598903061299795143929360395711020210769824764384718922898979318706735662563638859312024117764087176816929100038836825165997745175858151391747552772916358596447916581236137266690055236206686429983418915105841208302705945838725058954761546083763560226985859597874827308926656876419352353487645531847757035757295720869824004015071252605178819856102760159009139713396577974830023684477215548955933062314225333947463154019890073099705030557644025494887348484646782031863159015194484417},{"N":25298229297396047246415163429032546137139715727559844391184017906947304850232141234045323209407471473714145852636924268416866274482603754141415609592221706725085407059971638122009913495964543366119323417218834638913881087432600102264473788528537095668778412431377856067113698729914757144153775835786313302871273438949909936263664301138604696985912220658568672102041006541952444982579070062275651333990266954050520365848194152044834016212084441028573044037025009772616765171118784908205140185837844772749992941537017860827787097838183799078426827486346760690086948873222139803967157701952297751113063507286886770253809},{"N":27142202438632787162126599492908508783692765215748557510315014134009044742375492012422395905792294364201376442258017321008269356413320158807932162865700040957744157446176162447390298999320446062496836729102114052332958615915307193716216287036998207324413342337908047902088094382893405585342830460716335897834006040665407645344104524772021574862180664953364488173834491400964015536206179143781066229852877159880337660767454184922616386524557470530917791514588890903382115919687896218697262329973216887300329083882938499296413225108475327673886217363092593458630101782913564451822536507792690041998191978031482893873661},{"N":24506900410165079432913879286738242981557799447704277709132563752281068885918764244597103897934251933625444124974453530023693766922128717584028552755128051187819589410024704161034785358235535327695240184593017832269373629062497324651346586921679971074785452914954524453931920025017233873766495332551435302696547239605953737313669053194482788679487077465271167890491044626060923037626210805459313170671202877996680415217025953459280403666974895608025476083146334864242075064839862857242870450430867849337473211116054259839281123892458791925377357496234454799948092884977174468592367921171996109259120511593665944142269},{"N":26694966767987840469949338865344547117483340362831650227215482575365406012636774021468648984974992022743149425563486792907591668251920735101399223711217247824036472514130615393737405150133409306326610912172081216216331513707092964488994949651842782342704418212963772590286378010081225253538245220740244206602153540135126863052186543426616293649543741875882042173380956119737322204906042367710990417544800462728321639324791151406955584010061660628304199783826293959912579926890912970052339895938137461119473504729752401310289221600181057106776643382986556174592325963163204522372078262520351770361427042538592078722253},{"N":28161406783438289776782541515550232234219338732182263528677255680862818571394539837092411279908340595856411618560352096707955778113841586575489526111758509944691006867155143609674220650793817498419172979829028602046249597147507621299153669762040424244341554256616377217119563525915851719009321686306763607672801085326365691030132510560260181669852932393003570340516931927914922146799899039434467722922041925474101320996856938035131446584298134298675299397155375412990353784006913691603024110559796744887732721945933471868150638226543773483734660294313186275340618342717882057017678734282256333631978096376709630195493},{"N":30290385531723706663194155723402482345164001328034021287910161482488063429892351584916277391109894294446801833020074687889362652138426091460224301803948089690115686705682426193759251182110547546779254274419781083851169949275087832187538168815749507922889270386625094587688358817642053715412200458038741309360104964334706289126542952674791148655002683650712544232003067953586569445443104249283623297733191839471659254940888571771772980381177972566220724293577306168494057111878161156955456998298372496716136324267059071403030493623531599851487444134766104137251811774500492630476212318493040236485031236879687941684761},{"N":21891762840438596060416034930044842446937758373617708235288562429502315391645647044939378215035677465574183685957522821315454029977571728750605988329881847569313802549118091978526315133726370633285214423147938264418314863217805659876561184725718735591303337902948467582966199323804114988231963307083517180657041313131586070203747291724798899561367507615511932716092324516747320587928666160741969956121773346301706809405054989477031949248189136343469258532041255092588255241987397760849320759799542054627513230744643622791455964220513319415609245199516100422991698341556744298439022451385568791478794837569530013904689},{"N":25360934335416714794999313991057897528923718232366653339706494176825638906694689891746545886915964196582662458688535283322287088397853865709093712398485753916163063777301385991907720781358632265326870516346689492128442283774600103789825609570294923480202759046857115137927714980847316960609776972337028789163184648676367675625026306027140091761009104192786329465543720196130052658782412428125321357130192023653185727111578488774341366834046035305712205910649341950409228079277410881842097288924692206421126356254520404943323384573694119449632324221088061482676921038116252201661916622983158849603411299895152156469481}],"ECDSAPub":{"Coords":[92492306118178589821640584737240636977398594678247616965910942704932180187323,27954057508764275913470910100133573369328128015811591924683199269013496685879]}} \ No newline at end of file diff --git a/test/_eddsa_fixtures/keygen_data_0.json b/test/_eddsa_fixtures/keygen_data_0.json new file mode 100644 index 00000000..feeec143 --- /dev/null +++ b/test/_eddsa_fixtures/keygen_data_0.json @@ -0,0 +1 @@ +{"Xi":5497684578559545786538821087317191229833609560825198097090867227036693974853,"ShareID":40734138852254171962093726793026483849163144962128892259315105148313993825450,"Ks":[40734138852254171962093726793026483849163144962128892259315105148313993825450,40734138852254171962093726793026483849163144962128892259315105148313993825451,40734138852254171962093726793026483849163144962128892259315105148313993825452,40734138852254171962093726793026483849163144962128892259315105148313993825453,40734138852254171962093726793026483849163144962128892259315105148313993825454,40734138852254171962093726793026483849163144962128892259315105148313993825455,40734138852254171962093726793026483849163144962128892259315105148313993825456,40734138852254171962093726793026483849163144962128892259315105148313993825457,40734138852254171962093726793026483849163144962128892259315105148313993825458,40734138852254171962093726793026483849163144962128892259315105148313993825459,40734138852254171962093726793026483849163144962128892259315105148313993825460,40734138852254171962093726793026483849163144962128892259315105148313993825461,40734138852254171962093726793026483849163144962128892259315105148313993825462,40734138852254171962093726793026483849163144962128892259315105148313993825463,40734138852254171962093726793026483849163144962128892259315105148313993825464,40734138852254171962093726793026483849163144962128892259315105148313993825465,40734138852254171962093726793026483849163144962128892259315105148313993825466,40734138852254171962093726793026483849163144962128892259315105148313993825467,40734138852254171962093726793026483849163144962128892259315105148313993825468,40734138852254171962093726793026483849163144962128892259315105148313993825469],"BigXj":[{"Coords":[29957866551444288658476350454857942692734557351100032691360819157091897571232,36516084228669802171659768461438209556386151343623994887856397017072741988372]},{"Coords":[47405980669639002124687519219913707250293554115260022083522701215817403509702,6956633993610953877720305833332948578423467581354172946924040631226828086263]},{"Coords":[18448325566171282313365171084287037248684936691904749885126674379501353453346,57542808379242682171071366265254456185195752776998290707742666662032232473622]},{"Coords":[798119792817890022465650864894266739550633881670097146590803382931084199002,18741616705198182206589511729301188460657955392768622916582367701785923387424]},{"Coords":[14524065198933915096660983495571495008260235612202009841821241149956652340934,162069773027357354579088193613939754572344398048294401250160042815055523396]},{"Coords":[2391511861628100895088988814765656118369224176176415534794931546222531191393,54978250562078788732535891657909173161508352364458206272900734945726006923944]},{"Coords":[33367545684625665916290843623923194353275614015826572202674111417892161420321,34552418317790324990966929588824151029743376389391432746282019503564426200611]},{"Coords":[453004606432256381667684448461219576328123204931667780295629476469381320335,24202636244659007772676161416986810172809713458728117448473736554568193288470]},{"Coords":[44318728173104604826550003017879014210227013712735183198372207299653903594205,55087473080850843015060234253261358005815826246456261778853783389363296224499]},{"Coords":[5097897464978708021234982103799161978473496892186061915228937112062938960292,39812599820868772665849683762267559082841521300551301780306710760212842213142]},{"Coords":[55801688604275193229895471092959853307614973751632662500004587523688279428992,17908790269314533447122947617750819476463804243432605334549377565373680755876]},{"Coords":[32196451128233400126962687457853805171503763230195900653815988022301169917854,10273285854850198960907924097749326069343899412006196915507281805160302832102]},{"Coords":[26398652979910650230881886450362073218710043900599396151821471419532983149715,3032814692424797993000494058354620844984917462544480255564224802193495430820]},{"Coords":[27236617586105103118624761259021831737235970883376501177552152583376986719238,2786011207236436994120124945804028682728444491790282961909091865945687955840]},{"Coords":[6500269738457737805717018971821598944446826873819309240030153246330846600187,54308477058519174622786176570543012641112928166620722474067812858680268430854]},{"Coords":[4652059627434138465834466819430362335203531466567637962754703362561726860984,18006877504897652595228402160133201981096960017662552547657957601542173068568]},{"Coords":[42705465432401668547671480078970955931365681662524360494488948437573630670729,37242984276081434326327463579899341679142344806501877280538421137197674554811]},{"Coords":[18501735463211215871442136946404860176100300228118646447712783974401612692211,55831398139586339034188706414537302757232734304622486782051369794171579576311]},{"Coords":[7385530367911231668221642462698546652820692326793989938132531831625569287435,12085977429229034609485085920553594147602092630530547749432190844231493145848]},{"Coords":[49366217028906791915740719671679644479230737403944270239462268252818931953988,25008491817774874184492999972971314605544442775664114331432153999032773052367]}],"EDDSAPub":{"Coords":[42175055170903350083404361365361390497000185285799325061444760830647516725091,33752718602899281735872279809218140168011871948094137689488348151553552496995]}} \ No newline at end of file diff --git a/test/_eddsa_fixtures/keygen_data_1.json b/test/_eddsa_fixtures/keygen_data_1.json new file mode 100644 index 00000000..4460233d --- /dev/null +++ b/test/_eddsa_fixtures/keygen_data_1.json @@ -0,0 +1 @@ +{"Xi":63217934899982716894047386607270001125515919366615110191441945641589351059,"ShareID":40734138852254171962093726793026483849163144962128892259315105148313993825451,"Ks":[40734138852254171962093726793026483849163144962128892259315105148313993825450,40734138852254171962093726793026483849163144962128892259315105148313993825451,40734138852254171962093726793026483849163144962128892259315105148313993825452,40734138852254171962093726793026483849163144962128892259315105148313993825453,40734138852254171962093726793026483849163144962128892259315105148313993825454,40734138852254171962093726793026483849163144962128892259315105148313993825455,40734138852254171962093726793026483849163144962128892259315105148313993825456,40734138852254171962093726793026483849163144962128892259315105148313993825457,40734138852254171962093726793026483849163144962128892259315105148313993825458,40734138852254171962093726793026483849163144962128892259315105148313993825459,40734138852254171962093726793026483849163144962128892259315105148313993825460,40734138852254171962093726793026483849163144962128892259315105148313993825461,40734138852254171962093726793026483849163144962128892259315105148313993825462,40734138852254171962093726793026483849163144962128892259315105148313993825463,40734138852254171962093726793026483849163144962128892259315105148313993825464,40734138852254171962093726793026483849163144962128892259315105148313993825465,40734138852254171962093726793026483849163144962128892259315105148313993825466,40734138852254171962093726793026483849163144962128892259315105148313993825467,40734138852254171962093726793026483849163144962128892259315105148313993825468,40734138852254171962093726793026483849163144962128892259315105148313993825469],"BigXj":[{"Coords":[29957866551444288658476350454857942692734557351100032691360819157091897571232,36516084228669802171659768461438209556386151343623994887856397017072741988372]},{"Coords":[47405980669639002124687519219913707250293554115260022083522701215817403509702,6956633993610953877720305833332948578423467581354172946924040631226828086263]},{"Coords":[18448325566171282313365171084287037248684936691904749885126674379501353453346,57542808379242682171071366265254456185195752776998290707742666662032232473622]},{"Coords":[798119792817890022465650864894266739550633881670097146590803382931084199002,18741616705198182206589511729301188460657955392768622916582367701785923387424]},{"Coords":[14524065198933915096660983495571495008260235612202009841821241149956652340934,162069773027357354579088193613939754572344398048294401250160042815055523396]},{"Coords":[2391511861628100895088988814765656118369224176176415534794931546222531191393,54978250562078788732535891657909173161508352364458206272900734945726006923944]},{"Coords":[33367545684625665916290843623923194353275614015826572202674111417892161420321,34552418317790324990966929588824151029743376389391432746282019503564426200611]},{"Coords":[453004606432256381667684448461219576328123204931667780295629476469381320335,24202636244659007772676161416986810172809713458728117448473736554568193288470]},{"Coords":[44318728173104604826550003017879014210227013712735183198372207299653903594205,55087473080850843015060234253261358005815826246456261778853783389363296224499]},{"Coords":[5097897464978708021234982103799161978473496892186061915228937112062938960292,39812599820868772665849683762267559082841521300551301780306710760212842213142]},{"Coords":[55801688604275193229895471092959853307614973751632662500004587523688279428992,17908790269314533447122947617750819476463804243432605334549377565373680755876]},{"Coords":[32196451128233400126962687457853805171503763230195900653815988022301169917854,10273285854850198960907924097749326069343899412006196915507281805160302832102]},{"Coords":[26398652979910650230881886450362073218710043900599396151821471419532983149715,3032814692424797993000494058354620844984917462544480255564224802193495430820]},{"Coords":[27236617586105103118624761259021831737235970883376501177552152583376986719238,2786011207236436994120124945804028682728444491790282961909091865945687955840]},{"Coords":[6500269738457737805717018971821598944446826873819309240030153246330846600187,54308477058519174622786176570543012641112928166620722474067812858680268430854]},{"Coords":[4652059627434138465834466819430362335203531466567637962754703362561726860984,18006877504897652595228402160133201981096960017662552547657957601542173068568]},{"Coords":[42705465432401668547671480078970955931365681662524360494488948437573630670729,37242984276081434326327463579899341679142344806501877280538421137197674554811]},{"Coords":[18501735463211215871442136946404860176100300228118646447712783974401612692211,55831398139586339034188706414537302757232734304622486782051369794171579576311]},{"Coords":[7385530367911231668221642462698546652820692326793989938132531831625569287435,12085977429229034609485085920553594147602092630530547749432190844231493145848]},{"Coords":[49366217028906791915740719671679644479230737403944270239462268252818931953988,25008491817774874184492999972971314605544442775664114331432153999032773052367]}],"EDDSAPub":{"Coords":[42175055170903350083404361365361390497000185285799325061444760830647516725091,33752718602899281735872279809218140168011871948094137689488348151553552496995]}} \ No newline at end of file diff --git a/test/_eddsa_fixtures/keygen_data_10.json b/test/_eddsa_fixtures/keygen_data_10.json new file mode 100644 index 00000000..637f110a --- /dev/null +++ b/test/_eddsa_fixtures/keygen_data_10.json @@ -0,0 +1 @@ +{"Xi":612714003124180468435465629962791203830154005382664864392564657993173015402,"ShareID":40734138852254171962093726793026483849163144962128892259315105148313993825460,"Ks":[40734138852254171962093726793026483849163144962128892259315105148313993825450,40734138852254171962093726793026483849163144962128892259315105148313993825451,40734138852254171962093726793026483849163144962128892259315105148313993825452,40734138852254171962093726793026483849163144962128892259315105148313993825453,40734138852254171962093726793026483849163144962128892259315105148313993825454,40734138852254171962093726793026483849163144962128892259315105148313993825455,40734138852254171962093726793026483849163144962128892259315105148313993825456,40734138852254171962093726793026483849163144962128892259315105148313993825457,40734138852254171962093726793026483849163144962128892259315105148313993825458,40734138852254171962093726793026483849163144962128892259315105148313993825459,40734138852254171962093726793026483849163144962128892259315105148313993825460,40734138852254171962093726793026483849163144962128892259315105148313993825461,40734138852254171962093726793026483849163144962128892259315105148313993825462,40734138852254171962093726793026483849163144962128892259315105148313993825463,40734138852254171962093726793026483849163144962128892259315105148313993825464,40734138852254171962093726793026483849163144962128892259315105148313993825465,40734138852254171962093726793026483849163144962128892259315105148313993825466,40734138852254171962093726793026483849163144962128892259315105148313993825467,40734138852254171962093726793026483849163144962128892259315105148313993825468,40734138852254171962093726793026483849163144962128892259315105148313993825469],"BigXj":[{"Coords":[29957866551444288658476350454857942692734557351100032691360819157091897571232,36516084228669802171659768461438209556386151343623994887856397017072741988372]},{"Coords":[47405980669639002124687519219913707250293554115260022083522701215817403509702,6956633993610953877720305833332948578423467581354172946924040631226828086263]},{"Coords":[18448325566171282313365171084287037248684936691904749885126674379501353453346,57542808379242682171071366265254456185195752776998290707742666662032232473622]},{"Coords":[798119792817890022465650864894266739550633881670097146590803382931084199002,18741616705198182206589511729301188460657955392768622916582367701785923387424]},{"Coords":[14524065198933915096660983495571495008260235612202009841821241149956652340934,162069773027357354579088193613939754572344398048294401250160042815055523396]},{"Coords":[2391511861628100895088988814765656118369224176176415534794931546222531191393,54978250562078788732535891657909173161508352364458206272900734945726006923944]},{"Coords":[33367545684625665916290843623923194353275614015826572202674111417892161420321,34552418317790324990966929588824151029743376389391432746282019503564426200611]},{"Coords":[453004606432256381667684448461219576328123204931667780295629476469381320335,24202636244659007772676161416986810172809713458728117448473736554568193288470]},{"Coords":[44318728173104604826550003017879014210227013712735183198372207299653903594205,55087473080850843015060234253261358005815826246456261778853783389363296224499]},{"Coords":[5097897464978708021234982103799161978473496892186061915228937112062938960292,39812599820868772665849683762267559082841521300551301780306710760212842213142]},{"Coords":[55801688604275193229895471092959853307614973751632662500004587523688279428992,17908790269314533447122947617750819476463804243432605334549377565373680755876]},{"Coords":[32196451128233400126962687457853805171503763230195900653815988022301169917854,10273285854850198960907924097749326069343899412006196915507281805160302832102]},{"Coords":[26398652979910650230881886450362073218710043900599396151821471419532983149715,3032814692424797993000494058354620844984917462544480255564224802193495430820]},{"Coords":[27236617586105103118624761259021831737235970883376501177552152583376986719238,2786011207236436994120124945804028682728444491790282961909091865945687955840]},{"Coords":[6500269738457737805717018971821598944446826873819309240030153246330846600187,54308477058519174622786176570543012641112928166620722474067812858680268430854]},{"Coords":[4652059627434138465834466819430362335203531466567637962754703362561726860984,18006877504897652595228402160133201981096960017662552547657957601542173068568]},{"Coords":[42705465432401668547671480078970955931365681662524360494488948437573630670729,37242984276081434326327463579899341679142344806501877280538421137197674554811]},{"Coords":[18501735463211215871442136946404860176100300228118646447712783974401612692211,55831398139586339034188706414537302757232734304622486782051369794171579576311]},{"Coords":[7385530367911231668221642462698546652820692326793989938132531831625569287435,12085977429229034609485085920553594147602092630530547749432190844231493145848]},{"Coords":[49366217028906791915740719671679644479230737403944270239462268252818931953988,25008491817774874184492999972971314605544442775664114331432153999032773052367]}],"EDDSAPub":{"Coords":[42175055170903350083404361365361390497000185285799325061444760830647516725091,33752718602899281735872279809218140168011871948094137689488348151553552496995]}} \ No newline at end of file diff --git a/test/_eddsa_fixtures/keygen_data_11.json b/test/_eddsa_fixtures/keygen_data_11.json new file mode 100644 index 00000000..cfd154ae --- /dev/null +++ b/test/_eddsa_fixtures/keygen_data_11.json @@ -0,0 +1 @@ +{"Xi":132334330740542508112965228396678173206965797155205085258526075204147842999,"ShareID":40734138852254171962093726793026483849163144962128892259315105148313993825461,"Ks":[40734138852254171962093726793026483849163144962128892259315105148313993825450,40734138852254171962093726793026483849163144962128892259315105148313993825451,40734138852254171962093726793026483849163144962128892259315105148313993825452,40734138852254171962093726793026483849163144962128892259315105148313993825453,40734138852254171962093726793026483849163144962128892259315105148313993825454,40734138852254171962093726793026483849163144962128892259315105148313993825455,40734138852254171962093726793026483849163144962128892259315105148313993825456,40734138852254171962093726793026483849163144962128892259315105148313993825457,40734138852254171962093726793026483849163144962128892259315105148313993825458,40734138852254171962093726793026483849163144962128892259315105148313993825459,40734138852254171962093726793026483849163144962128892259315105148313993825460,40734138852254171962093726793026483849163144962128892259315105148313993825461,40734138852254171962093726793026483849163144962128892259315105148313993825462,40734138852254171962093726793026483849163144962128892259315105148313993825463,40734138852254171962093726793026483849163144962128892259315105148313993825464,40734138852254171962093726793026483849163144962128892259315105148313993825465,40734138852254171962093726793026483849163144962128892259315105148313993825466,40734138852254171962093726793026483849163144962128892259315105148313993825467,40734138852254171962093726793026483849163144962128892259315105148313993825468,40734138852254171962093726793026483849163144962128892259315105148313993825469],"BigXj":[{"Coords":[29957866551444288658476350454857942692734557351100032691360819157091897571232,36516084228669802171659768461438209556386151343623994887856397017072741988372]},{"Coords":[47405980669639002124687519219913707250293554115260022083522701215817403509702,6956633993610953877720305833332948578423467581354172946924040631226828086263]},{"Coords":[18448325566171282313365171084287037248684936691904749885126674379501353453346,57542808379242682171071366265254456185195752776998290707742666662032232473622]},{"Coords":[798119792817890022465650864894266739550633881670097146590803382931084199002,18741616705198182206589511729301188460657955392768622916582367701785923387424]},{"Coords":[14524065198933915096660983495571495008260235612202009841821241149956652340934,162069773027357354579088193613939754572344398048294401250160042815055523396]},{"Coords":[2391511861628100895088988814765656118369224176176415534794931546222531191393,54978250562078788732535891657909173161508352364458206272900734945726006923944]},{"Coords":[33367545684625665916290843623923194353275614015826572202674111417892161420321,34552418317790324990966929588824151029743376389391432746282019503564426200611]},{"Coords":[453004606432256381667684448461219576328123204931667780295629476469381320335,24202636244659007772676161416986810172809713458728117448473736554568193288470]},{"Coords":[44318728173104604826550003017879014210227013712735183198372207299653903594205,55087473080850843015060234253261358005815826246456261778853783389363296224499]},{"Coords":[5097897464978708021234982103799161978473496892186061915228937112062938960292,39812599820868772665849683762267559082841521300551301780306710760212842213142]},{"Coords":[55801688604275193229895471092959853307614973751632662500004587523688279428992,17908790269314533447122947617750819476463804243432605334549377565373680755876]},{"Coords":[32196451128233400126962687457853805171503763230195900653815988022301169917854,10273285854850198960907924097749326069343899412006196915507281805160302832102]},{"Coords":[26398652979910650230881886450362073218710043900599396151821471419532983149715,3032814692424797993000494058354620844984917462544480255564224802193495430820]},{"Coords":[27236617586105103118624761259021831737235970883376501177552152583376986719238,2786011207236436994120124945804028682728444491790282961909091865945687955840]},{"Coords":[6500269738457737805717018971821598944446826873819309240030153246330846600187,54308477058519174622786176570543012641112928166620722474067812858680268430854]},{"Coords":[4652059627434138465834466819430362335203531466567637962754703362561726860984,18006877504897652595228402160133201981096960017662552547657957601542173068568]},{"Coords":[42705465432401668547671480078970955931365681662524360494488948437573630670729,37242984276081434326327463579899341679142344806501877280538421137197674554811]},{"Coords":[18501735463211215871442136946404860176100300228118646447712783974401612692211,55831398139586339034188706414537302757232734304622486782051369794171579576311]},{"Coords":[7385530367911231668221642462698546652820692326793989938132531831625569287435,12085977429229034609485085920553594147602092630530547749432190844231493145848]},{"Coords":[49366217028906791915740719671679644479230737403944270239462268252818931953988,25008491817774874184492999972971314605544442775664114331432153999032773052367]}],"EDDSAPub":{"Coords":[42175055170903350083404361365361390497000185285799325061444760830647516725091,33752718602899281735872279809218140168011871948094137689488348151553552496995]}} \ No newline at end of file diff --git a/test/_eddsa_fixtures/keygen_data_12.json b/test/_eddsa_fixtures/keygen_data_12.json new file mode 100644 index 00000000..5c0b4d6f --- /dev/null +++ b/test/_eddsa_fixtures/keygen_data_12.json @@ -0,0 +1 @@ +{"Xi":1921343134857809336751206840551659669418844774179637463961986945173823600101,"ShareID":40734138852254171962093726793026483849163144962128892259315105148313993825462,"Ks":[40734138852254171962093726793026483849163144962128892259315105148313993825450,40734138852254171962093726793026483849163144962128892259315105148313993825451,40734138852254171962093726793026483849163144962128892259315105148313993825452,40734138852254171962093726793026483849163144962128892259315105148313993825453,40734138852254171962093726793026483849163144962128892259315105148313993825454,40734138852254171962093726793026483849163144962128892259315105148313993825455,40734138852254171962093726793026483849163144962128892259315105148313993825456,40734138852254171962093726793026483849163144962128892259315105148313993825457,40734138852254171962093726793026483849163144962128892259315105148313993825458,40734138852254171962093726793026483849163144962128892259315105148313993825459,40734138852254171962093726793026483849163144962128892259315105148313993825460,40734138852254171962093726793026483849163144962128892259315105148313993825461,40734138852254171962093726793026483849163144962128892259315105148313993825462,40734138852254171962093726793026483849163144962128892259315105148313993825463,40734138852254171962093726793026483849163144962128892259315105148313993825464,40734138852254171962093726793026483849163144962128892259315105148313993825465,40734138852254171962093726793026483849163144962128892259315105148313993825466,40734138852254171962093726793026483849163144962128892259315105148313993825467,40734138852254171962093726793026483849163144962128892259315105148313993825468,40734138852254171962093726793026483849163144962128892259315105148313993825469],"BigXj":[{"Coords":[29957866551444288658476350454857942692734557351100032691360819157091897571232,36516084228669802171659768461438209556386151343623994887856397017072741988372]},{"Coords":[47405980669639002124687519219913707250293554115260022083522701215817403509702,6956633993610953877720305833332948578423467581354172946924040631226828086263]},{"Coords":[18448325566171282313365171084287037248684936691904749885126674379501353453346,57542808379242682171071366265254456185195752776998290707742666662032232473622]},{"Coords":[798119792817890022465650864894266739550633881670097146590803382931084199002,18741616705198182206589511729301188460657955392768622916582367701785923387424]},{"Coords":[14524065198933915096660983495571495008260235612202009841821241149956652340934,162069773027357354579088193613939754572344398048294401250160042815055523396]},{"Coords":[2391511861628100895088988814765656118369224176176415534794931546222531191393,54978250562078788732535891657909173161508352364458206272900734945726006923944]},{"Coords":[33367545684625665916290843623923194353275614015826572202674111417892161420321,34552418317790324990966929588824151029743376389391432746282019503564426200611]},{"Coords":[453004606432256381667684448461219576328123204931667780295629476469381320335,24202636244659007772676161416986810172809713458728117448473736554568193288470]},{"Coords":[44318728173104604826550003017879014210227013712735183198372207299653903594205,55087473080850843015060234253261358005815826246456261778853783389363296224499]},{"Coords":[5097897464978708021234982103799161978473496892186061915228937112062938960292,39812599820868772665849683762267559082841521300551301780306710760212842213142]},{"Coords":[55801688604275193229895471092959853307614973751632662500004587523688279428992,17908790269314533447122947617750819476463804243432605334549377565373680755876]},{"Coords":[32196451128233400126962687457853805171503763230195900653815988022301169917854,10273285854850198960907924097749326069343899412006196915507281805160302832102]},{"Coords":[26398652979910650230881886450362073218710043900599396151821471419532983149715,3032814692424797993000494058354620844984917462544480255564224802193495430820]},{"Coords":[27236617586105103118624761259021831737235970883376501177552152583376986719238,2786011207236436994120124945804028682728444491790282961909091865945687955840]},{"Coords":[6500269738457737805717018971821598944446826873819309240030153246330846600187,54308477058519174622786176570543012641112928166620722474067812858680268430854]},{"Coords":[4652059627434138465834466819430362335203531466567637962754703362561726860984,18006877504897652595228402160133201981096960017662552547657957601542173068568]},{"Coords":[42705465432401668547671480078970955931365681662524360494488948437573630670729,37242984276081434326327463579899341679142344806501877280538421137197674554811]},{"Coords":[18501735463211215871442136946404860176100300228118646447712783974401612692211,55831398139586339034188706414537302757232734304622486782051369794171579576311]},{"Coords":[7385530367911231668221642462698546652820692326793989938132531831625569287435,12085977429229034609485085920553594147602092630530547749432190844231493145848]},{"Coords":[49366217028906791915740719671679644479230737403944270239462268252818931953988,25008491817774874184492999972971314605544442775664114331432153999032773052367]}],"EDDSAPub":{"Coords":[42175055170903350083404361365361390497000185285799325061444760830647516725091,33752718602899281735872279809218140168011871948094137689488348151553552496995]}} \ No newline at end of file diff --git a/test/_eddsa_fixtures/keygen_data_13.json b/test/_eddsa_fixtures/keygen_data_13.json new file mode 100644 index 00000000..bdc867a3 --- /dev/null +++ b/test/_eddsa_fixtures/keygen_data_13.json @@ -0,0 +1 @@ +{"Xi":3558382524044537666501461744703165381727523259984117242394204292910450959450,"ShareID":40734138852254171962093726793026483849163144962128892259315105148313993825463,"Ks":[40734138852254171962093726793026483849163144962128892259315105148313993825450,40734138852254171962093726793026483849163144962128892259315105148313993825451,40734138852254171962093726793026483849163144962128892259315105148313993825452,40734138852254171962093726793026483849163144962128892259315105148313993825453,40734138852254171962093726793026483849163144962128892259315105148313993825454,40734138852254171962093726793026483849163144962128892259315105148313993825455,40734138852254171962093726793026483849163144962128892259315105148313993825456,40734138852254171962093726793026483849163144962128892259315105148313993825457,40734138852254171962093726793026483849163144962128892259315105148313993825458,40734138852254171962093726793026483849163144962128892259315105148313993825459,40734138852254171962093726793026483849163144962128892259315105148313993825460,40734138852254171962093726793026483849163144962128892259315105148313993825461,40734138852254171962093726793026483849163144962128892259315105148313993825462,40734138852254171962093726793026483849163144962128892259315105148313993825463,40734138852254171962093726793026483849163144962128892259315105148313993825464,40734138852254171962093726793026483849163144962128892259315105148313993825465,40734138852254171962093726793026483849163144962128892259315105148313993825466,40734138852254171962093726793026483849163144962128892259315105148313993825467,40734138852254171962093726793026483849163144962128892259315105148313993825468,40734138852254171962093726793026483849163144962128892259315105148313993825469],"BigXj":[{"Coords":[29957866551444288658476350454857942692734557351100032691360819157091897571232,36516084228669802171659768461438209556386151343623994887856397017072741988372]},{"Coords":[47405980669639002124687519219913707250293554115260022083522701215817403509702,6956633993610953877720305833332948578423467581354172946924040631226828086263]},{"Coords":[18448325566171282313365171084287037248684936691904749885126674379501353453346,57542808379242682171071366265254456185195752776998290707742666662032232473622]},{"Coords":[798119792817890022465650864894266739550633881670097146590803382931084199002,18741616705198182206589511729301188460657955392768622916582367701785923387424]},{"Coords":[14524065198933915096660983495571495008260235612202009841821241149956652340934,162069773027357354579088193613939754572344398048294401250160042815055523396]},{"Coords":[2391511861628100895088988814765656118369224176176415534794931546222531191393,54978250562078788732535891657909173161508352364458206272900734945726006923944]},{"Coords":[33367545684625665916290843623923194353275614015826572202674111417892161420321,34552418317790324990966929588824151029743376389391432746282019503564426200611]},{"Coords":[453004606432256381667684448461219576328123204931667780295629476469381320335,24202636244659007772676161416986810172809713458728117448473736554568193288470]},{"Coords":[44318728173104604826550003017879014210227013712735183198372207299653903594205,55087473080850843015060234253261358005815826246456261778853783389363296224499]},{"Coords":[5097897464978708021234982103799161978473496892186061915228937112062938960292,39812599820868772665849683762267559082841521300551301780306710760212842213142]},{"Coords":[55801688604275193229895471092959853307614973751632662500004587523688279428992,17908790269314533447122947617750819476463804243432605334549377565373680755876]},{"Coords":[32196451128233400126962687457853805171503763230195900653815988022301169917854,10273285854850198960907924097749326069343899412006196915507281805160302832102]},{"Coords":[26398652979910650230881886450362073218710043900599396151821471419532983149715,3032814692424797993000494058354620844984917462544480255564224802193495430820]},{"Coords":[27236617586105103118624761259021831737235970883376501177552152583376986719238,2786011207236436994120124945804028682728444491790282961909091865945687955840]},{"Coords":[6500269738457737805717018971821598944446826873819309240030153246330846600187,54308477058519174622786176570543012641112928166620722474067812858680268430854]},{"Coords":[4652059627434138465834466819430362335203531466567637962754703362561726860984,18006877504897652595228402160133201981096960017662552547657957601542173068568]},{"Coords":[42705465432401668547671480078970955931365681662524360494488948437573630670729,37242984276081434326327463579899341679142344806501877280538421137197674554811]},{"Coords":[18501735463211215871442136946404860176100300228118646447712783974401612692211,55831398139586339034188706414537302757232734304622486782051369794171579576311]},{"Coords":[7385530367911231668221642462698546652820692326793989938132531831625569287435,12085977429229034609485085920553594147602092630530547749432190844231493145848]},{"Coords":[49366217028906791915740719671679644479230737403944270239462268252818931953988,25008491817774874184492999972971314605544442775664114331432153999032773052367]}],"EDDSAPub":{"Coords":[42175055170903350083404361365361390497000185285799325061444760830647516725091,33752718602899281735872279809218140168011871948094137689488348151553552496995]}} \ No newline at end of file diff --git a/test/_eddsa_fixtures/keygen_data_14.json b/test/_eddsa_fixtures/keygen_data_14.json new file mode 100644 index 00000000..27d1d8f4 --- /dev/null +++ b/test/_eddsa_fixtures/keygen_data_14.json @@ -0,0 +1 @@ +{"Xi":6412808835118819085492743071719737203105199209455243425461676282885185849942,"ShareID":40734138852254171962093726793026483849163144962128892259315105148313993825464,"Ks":[40734138852254171962093726793026483849163144962128892259315105148313993825450,40734138852254171962093726793026483849163144962128892259315105148313993825451,40734138852254171962093726793026483849163144962128892259315105148313993825452,40734138852254171962093726793026483849163144962128892259315105148313993825453,40734138852254171962093726793026483849163144962128892259315105148313993825454,40734138852254171962093726793026483849163144962128892259315105148313993825455,40734138852254171962093726793026483849163144962128892259315105148313993825456,40734138852254171962093726793026483849163144962128892259315105148313993825457,40734138852254171962093726793026483849163144962128892259315105148313993825458,40734138852254171962093726793026483849163144962128892259315105148313993825459,40734138852254171962093726793026483849163144962128892259315105148313993825460,40734138852254171962093726793026483849163144962128892259315105148313993825461,40734138852254171962093726793026483849163144962128892259315105148313993825462,40734138852254171962093726793026483849163144962128892259315105148313993825463,40734138852254171962093726793026483849163144962128892259315105148313993825464,40734138852254171962093726793026483849163144962128892259315105148313993825465,40734138852254171962093726793026483849163144962128892259315105148313993825466,40734138852254171962093726793026483849163144962128892259315105148313993825467,40734138852254171962093726793026483849163144962128892259315105148313993825468,40734138852254171962093726793026483849163144962128892259315105148313993825469],"BigXj":[{"Coords":[29957866551444288658476350454857942692734557351100032691360819157091897571232,36516084228669802171659768461438209556386151343623994887856397017072741988372]},{"Coords":[47405980669639002124687519219913707250293554115260022083522701215817403509702,6956633993610953877720305833332948578423467581354172946924040631226828086263]},{"Coords":[18448325566171282313365171084287037248684936691904749885126674379501353453346,57542808379242682171071366265254456185195752776998290707742666662032232473622]},{"Coords":[798119792817890022465650864894266739550633881670097146590803382931084199002,18741616705198182206589511729301188460657955392768622916582367701785923387424]},{"Coords":[14524065198933915096660983495571495008260235612202009841821241149956652340934,162069773027357354579088193613939754572344398048294401250160042815055523396]},{"Coords":[2391511861628100895088988814765656118369224176176415534794931546222531191393,54978250562078788732535891657909173161508352364458206272900734945726006923944]},{"Coords":[33367545684625665916290843623923194353275614015826572202674111417892161420321,34552418317790324990966929588824151029743376389391432746282019503564426200611]},{"Coords":[453004606432256381667684448461219576328123204931667780295629476469381320335,24202636244659007772676161416986810172809713458728117448473736554568193288470]},{"Coords":[44318728173104604826550003017879014210227013712735183198372207299653903594205,55087473080850843015060234253261358005815826246456261778853783389363296224499]},{"Coords":[5097897464978708021234982103799161978473496892186061915228937112062938960292,39812599820868772665849683762267559082841521300551301780306710760212842213142]},{"Coords":[55801688604275193229895471092959853307614973751632662500004587523688279428992,17908790269314533447122947617750819476463804243432605334549377565373680755876]},{"Coords":[32196451128233400126962687457853805171503763230195900653815988022301169917854,10273285854850198960907924097749326069343899412006196915507281805160302832102]},{"Coords":[26398652979910650230881886450362073218710043900599396151821471419532983149715,3032814692424797993000494058354620844984917462544480255564224802193495430820]},{"Coords":[27236617586105103118624761259021831737235970883376501177552152583376986719238,2786011207236436994120124945804028682728444491790282961909091865945687955840]},{"Coords":[6500269738457737805717018971821598944446826873819309240030153246330846600187,54308477058519174622786176570543012641112928166620722474067812858680268430854]},{"Coords":[4652059627434138465834466819430362335203531466567637962754703362561726860984,18006877504897652595228402160133201981096960017662552547657957601542173068568]},{"Coords":[42705465432401668547671480078970955931365681662524360494488948437573630670729,37242984276081434326327463579899341679142344806501877280538421137197674554811]},{"Coords":[18501735463211215871442136946404860176100300228118646447712783974401612692211,55831398139586339034188706414537302757232734304622486782051369794171579576311]},{"Coords":[7385530367911231668221642462698546652820692326793989938132531831625569287435,12085977429229034609485085920553594147602092630530547749432190844231493145848]},{"Coords":[49366217028906791915740719671679644479230737403944270239462268252818931953988,25008491817774874184492999972971314605544442775664114331432153999032773052367]}],"EDDSAPub":{"Coords":[42175055170903350083404361365361390497000185285799325061444760830647516725091,33752718602899281735872279809218140168011871948094137689488348151553552496995]}} \ No newline at end of file diff --git a/test/_eddsa_fixtures/keygen_data_15.json b/test/_eddsa_fixtures/keygen_data_15.json new file mode 100644 index 00000000..aa6b2347 --- /dev/null +++ b/test/_eddsa_fixtures/keygen_data_15.json @@ -0,0 +1 @@ +{"Xi":2537771294854952247889447558735279964020200059516392797425993769055333209778,"ShareID":40734138852254171962093726793026483849163144962128892259315105148313993825465,"Ks":[40734138852254171962093726793026483849163144962128892259315105148313993825450,40734138852254171962093726793026483849163144962128892259315105148313993825451,40734138852254171962093726793026483849163144962128892259315105148313993825452,40734138852254171962093726793026483849163144962128892259315105148313993825453,40734138852254171962093726793026483849163144962128892259315105148313993825454,40734138852254171962093726793026483849163144962128892259315105148313993825455,40734138852254171962093726793026483849163144962128892259315105148313993825456,40734138852254171962093726793026483849163144962128892259315105148313993825457,40734138852254171962093726793026483849163144962128892259315105148313993825458,40734138852254171962093726793026483849163144962128892259315105148313993825459,40734138852254171962093726793026483849163144962128892259315105148313993825460,40734138852254171962093726793026483849163144962128892259315105148313993825461,40734138852254171962093726793026483849163144962128892259315105148313993825462,40734138852254171962093726793026483849163144962128892259315105148313993825463,40734138852254171962093726793026483849163144962128892259315105148313993825464,40734138852254171962093726793026483849163144962128892259315105148313993825465,40734138852254171962093726793026483849163144962128892259315105148313993825466,40734138852254171962093726793026483849163144962128892259315105148313993825467,40734138852254171962093726793026483849163144962128892259315105148313993825468,40734138852254171962093726793026483849163144962128892259315105148313993825469],"BigXj":[{"Coords":[29957866551444288658476350454857942692734557351100032691360819157091897571232,36516084228669802171659768461438209556386151343623994887856397017072741988372]},{"Coords":[47405980669639002124687519219913707250293554115260022083522701215817403509702,6956633993610953877720305833332948578423467581354172946924040631226828086263]},{"Coords":[18448325566171282313365171084287037248684936691904749885126674379501353453346,57542808379242682171071366265254456185195752776998290707742666662032232473622]},{"Coords":[798119792817890022465650864894266739550633881670097146590803382931084199002,18741616705198182206589511729301188460657955392768622916582367701785923387424]},{"Coords":[14524065198933915096660983495571495008260235612202009841821241149956652340934,162069773027357354579088193613939754572344398048294401250160042815055523396]},{"Coords":[2391511861628100895088988814765656118369224176176415534794931546222531191393,54978250562078788732535891657909173161508352364458206272900734945726006923944]},{"Coords":[33367545684625665916290843623923194353275614015826572202674111417892161420321,34552418317790324990966929588824151029743376389391432746282019503564426200611]},{"Coords":[453004606432256381667684448461219576328123204931667780295629476469381320335,24202636244659007772676161416986810172809713458728117448473736554568193288470]},{"Coords":[44318728173104604826550003017879014210227013712735183198372207299653903594205,55087473080850843015060234253261358005815826246456261778853783389363296224499]},{"Coords":[5097897464978708021234982103799161978473496892186061915228937112062938960292,39812599820868772665849683762267559082841521300551301780306710760212842213142]},{"Coords":[55801688604275193229895471092959853307614973751632662500004587523688279428992,17908790269314533447122947617750819476463804243432605334549377565373680755876]},{"Coords":[32196451128233400126962687457853805171503763230195900653815988022301169917854,10273285854850198960907924097749326069343899412006196915507281805160302832102]},{"Coords":[26398652979910650230881886450362073218710043900599396151821471419532983149715,3032814692424797993000494058354620844984917462544480255564224802193495430820]},{"Coords":[27236617586105103118624761259021831737235970883376501177552152583376986719238,2786011207236436994120124945804028682728444491790282961909091865945687955840]},{"Coords":[6500269738457737805717018971821598944446826873819309240030153246330846600187,54308477058519174622786176570543012641112928166620722474067812858680268430854]},{"Coords":[4652059627434138465834466819430362335203531466567637962754703362561726860984,18006877504897652595228402160133201981096960017662552547657957601542173068568]},{"Coords":[42705465432401668547671480078970955931365681662524360494488948437573630670729,37242984276081434326327463579899341679142344806501877280538421137197674554811]},{"Coords":[18501735463211215871442136946404860176100300228118646447712783974401612692211,55831398139586339034188706414537302757232734304622486782051369794171579576311]},{"Coords":[7385530367911231668221642462698546652820692326793989938132531831625569287435,12085977429229034609485085920553594147602092630530547749432190844231493145848]},{"Coords":[49366217028906791915740719671679644479230737403944270239462268252818931953988,25008491817774874184492999972971314605544442775664114331432153999032773052367]}],"EDDSAPub":{"Coords":[42175055170903350083404361365361390497000185285799325061444760830647516725091,33752718602899281735872279809218140168011871948094137689488348151553552496995]}} \ No newline at end of file diff --git a/test/_eddsa_fixtures/keygen_data_16.json b/test/_eddsa_fixtures/keygen_data_16.json new file mode 100644 index 00000000..e30f5e14 --- /dev/null +++ b/test/_eddsa_fixtures/keygen_data_16.json @@ -0,0 +1 @@ +{"Xi":1398337338638325844456898556082803595180685456144685609069723938462608553306,"ShareID":40734138852254171962093726793026483849163144962128892259315105148313993825466,"Ks":[40734138852254171962093726793026483849163144962128892259315105148313993825450,40734138852254171962093726793026483849163144962128892259315105148313993825451,40734138852254171962093726793026483849163144962128892259315105148313993825452,40734138852254171962093726793026483849163144962128892259315105148313993825453,40734138852254171962093726793026483849163144962128892259315105148313993825454,40734138852254171962093726793026483849163144962128892259315105148313993825455,40734138852254171962093726793026483849163144962128892259315105148313993825456,40734138852254171962093726793026483849163144962128892259315105148313993825457,40734138852254171962093726793026483849163144962128892259315105148313993825458,40734138852254171962093726793026483849163144962128892259315105148313993825459,40734138852254171962093726793026483849163144962128892259315105148313993825460,40734138852254171962093726793026483849163144962128892259315105148313993825461,40734138852254171962093726793026483849163144962128892259315105148313993825462,40734138852254171962093726793026483849163144962128892259315105148313993825463,40734138852254171962093726793026483849163144962128892259315105148313993825464,40734138852254171962093726793026483849163144962128892259315105148313993825465,40734138852254171962093726793026483849163144962128892259315105148313993825466,40734138852254171962093726793026483849163144962128892259315105148313993825467,40734138852254171962093726793026483849163144962128892259315105148313993825468,40734138852254171962093726793026483849163144962128892259315105148313993825469],"BigXj":[{"Coords":[29957866551444288658476350454857942692734557351100032691360819157091897571232,36516084228669802171659768461438209556386151343623994887856397017072741988372]},{"Coords":[47405980669639002124687519219913707250293554115260022083522701215817403509702,6956633993610953877720305833332948578423467581354172946924040631226828086263]},{"Coords":[18448325566171282313365171084287037248684936691904749885126674379501353453346,57542808379242682171071366265254456185195752776998290707742666662032232473622]},{"Coords":[798119792817890022465650864894266739550633881670097146590803382931084199002,18741616705198182206589511729301188460657955392768622916582367701785923387424]},{"Coords":[14524065198933915096660983495571495008260235612202009841821241149956652340934,162069773027357354579088193613939754572344398048294401250160042815055523396]},{"Coords":[2391511861628100895088988814765656118369224176176415534794931546222531191393,54978250562078788732535891657909173161508352364458206272900734945726006923944]},{"Coords":[33367545684625665916290843623923194353275614015826572202674111417892161420321,34552418317790324990966929588824151029743376389391432746282019503564426200611]},{"Coords":[453004606432256381667684448461219576328123204931667780295629476469381320335,24202636244659007772676161416986810172809713458728117448473736554568193288470]},{"Coords":[44318728173104604826550003017879014210227013712735183198372207299653903594205,55087473080850843015060234253261358005815826246456261778853783389363296224499]},{"Coords":[5097897464978708021234982103799161978473496892186061915228937112062938960292,39812599820868772665849683762267559082841521300551301780306710760212842213142]},{"Coords":[55801688604275193229895471092959853307614973751632662500004587523688279428992,17908790269314533447122947617750819476463804243432605334549377565373680755876]},{"Coords":[32196451128233400126962687457853805171503763230195900653815988022301169917854,10273285854850198960907924097749326069343899412006196915507281805160302832102]},{"Coords":[26398652979910650230881886450362073218710043900599396151821471419532983149715,3032814692424797993000494058354620844984917462544480255564224802193495430820]},{"Coords":[27236617586105103118624761259021831737235970883376501177552152583376986719238,2786011207236436994120124945804028682728444491790282961909091865945687955840]},{"Coords":[6500269738457737805717018971821598944446826873819309240030153246330846600187,54308477058519174622786176570543012641112928166620722474067812858680268430854]},{"Coords":[4652059627434138465834466819430362335203531466567637962754703362561726860984,18006877504897652595228402160133201981096960017662552547657957601542173068568]},{"Coords":[42705465432401668547671480078970955931365681662524360494488948437573630670729,37242984276081434326327463579899341679142344806501877280538421137197674554811]},{"Coords":[18501735463211215871442136946404860176100300228118646447712783974401612692211,55831398139586339034188706414537302757232734304622486782051369794171579576311]},{"Coords":[7385530367911231668221642462698546652820692326793989938132531831625569287435,12085977429229034609485085920553594147602092630530547749432190844231493145848]},{"Coords":[49366217028906791915740719671679644479230737403944270239462268252818931953988,25008491817774874184492999972971314605544442775664114331432153999032773052367]}],"EDDSAPub":{"Coords":[42175055170903350083404361365361390497000185285799325061444760830647516725091,33752718602899281735872279809218140168011871948094137689488348151553552496995]}} \ No newline at end of file diff --git a/test/_eddsa_fixtures/keygen_data_17.json b/test/_eddsa_fixtures/keygen_data_17.json new file mode 100644 index 00000000..5c87a0c9 --- /dev/null +++ b/test/_eddsa_fixtures/keygen_data_17.json @@ -0,0 +1 @@ +{"Xi":6568342599621759325979947282583347307332087091895502202407344082023314551338,"ShareID":40734138852254171962093726793026483849163144962128892259315105148313993825467,"Ks":[40734138852254171962093726793026483849163144962128892259315105148313993825450,40734138852254171962093726793026483849163144962128892259315105148313993825451,40734138852254171962093726793026483849163144962128892259315105148313993825452,40734138852254171962093726793026483849163144962128892259315105148313993825453,40734138852254171962093726793026483849163144962128892259315105148313993825454,40734138852254171962093726793026483849163144962128892259315105148313993825455,40734138852254171962093726793026483849163144962128892259315105148313993825456,40734138852254171962093726793026483849163144962128892259315105148313993825457,40734138852254171962093726793026483849163144962128892259315105148313993825458,40734138852254171962093726793026483849163144962128892259315105148313993825459,40734138852254171962093726793026483849163144962128892259315105148313993825460,40734138852254171962093726793026483849163144962128892259315105148313993825461,40734138852254171962093726793026483849163144962128892259315105148313993825462,40734138852254171962093726793026483849163144962128892259315105148313993825463,40734138852254171962093726793026483849163144962128892259315105148313993825464,40734138852254171962093726793026483849163144962128892259315105148313993825465,40734138852254171962093726793026483849163144962128892259315105148313993825466,40734138852254171962093726793026483849163144962128892259315105148313993825467,40734138852254171962093726793026483849163144962128892259315105148313993825468,40734138852254171962093726793026483849163144962128892259315105148313993825469],"BigXj":[{"Coords":[29957866551444288658476350454857942692734557351100032691360819157091897571232,36516084228669802171659768461438209556386151343623994887856397017072741988372]},{"Coords":[47405980669639002124687519219913707250293554115260022083522701215817403509702,6956633993610953877720305833332948578423467581354172946924040631226828086263]},{"Coords":[18448325566171282313365171084287037248684936691904749885126674379501353453346,57542808379242682171071366265254456185195752776998290707742666662032232473622]},{"Coords":[798119792817890022465650864894266739550633881670097146590803382931084199002,18741616705198182206589511729301188460657955392768622916582367701785923387424]},{"Coords":[14524065198933915096660983495571495008260235612202009841821241149956652340934,162069773027357354579088193613939754572344398048294401250160042815055523396]},{"Coords":[2391511861628100895088988814765656118369224176176415534794931546222531191393,54978250562078788732535891657909173161508352364458206272900734945726006923944]},{"Coords":[33367545684625665916290843623923194353275614015826572202674111417892161420321,34552418317790324990966929588824151029743376389391432746282019503564426200611]},{"Coords":[453004606432256381667684448461219576328123204931667780295629476469381320335,24202636244659007772676161416986810172809713458728117448473736554568193288470]},{"Coords":[44318728173104604826550003017879014210227013712735183198372207299653903594205,55087473080850843015060234253261358005815826246456261778853783389363296224499]},{"Coords":[5097897464978708021234982103799161978473496892186061915228937112062938960292,39812599820868772665849683762267559082841521300551301780306710760212842213142]},{"Coords":[55801688604275193229895471092959853307614973751632662500004587523688279428992,17908790269314533447122947617750819476463804243432605334549377565373680755876]},{"Coords":[32196451128233400126962687457853805171503763230195900653815988022301169917854,10273285854850198960907924097749326069343899412006196915507281805160302832102]},{"Coords":[26398652979910650230881886450362073218710043900599396151821471419532983149715,3032814692424797993000494058354620844984917462544480255564224802193495430820]},{"Coords":[27236617586105103118624761259021831737235970883376501177552152583376986719238,2786011207236436994120124945804028682728444491790282961909091865945687955840]},{"Coords":[6500269738457737805717018971821598944446826873819309240030153246330846600187,54308477058519174622786176570543012641112928166620722474067812858680268430854]},{"Coords":[4652059627434138465834466819430362335203531466567637962754703362561726860984,18006877504897652595228402160133201981096960017662552547657957601542173068568]},{"Coords":[42705465432401668547671480078970955931365681662524360494488948437573630670729,37242984276081434326327463579899341679142344806501877280538421137197674554811]},{"Coords":[18501735463211215871442136946404860176100300228118646447712783974401612692211,55831398139586339034188706414537302757232734304622486782051369794171579576311]},{"Coords":[7385530367911231668221642462698546652820692326793989938132531831625569287435,12085977429229034609485085920553594147602092630530547749432190844231493145848]},{"Coords":[49366217028906791915740719671679644479230737403944270239462268252818931953988,25008491817774874184492999972971314605544442775664114331432153999032773052367]}],"EDDSAPub":{"Coords":[42175055170903350083404361365361390497000185285799325061444760830647516725091,33752718602899281735872279809218140168011871948094137689488348151553552496995]}} \ No newline at end of file diff --git a/test/_eddsa_fixtures/keygen_data_18.json b/test/_eddsa_fixtures/keygen_data_18.json new file mode 100644 index 00000000..13647fd9 --- /dev/null +++ b/test/_eddsa_fixtures/keygen_data_18.json @@ -0,0 +1 @@ +{"Xi":3049379593686129638313564852122191503689962664104561458255546250747117815135,"ShareID":40734138852254171962093726793026483849163144962128892259315105148313993825468,"Ks":[40734138852254171962093726793026483849163144962128892259315105148313993825450,40734138852254171962093726793026483849163144962128892259315105148313993825451,40734138852254171962093726793026483849163144962128892259315105148313993825452,40734138852254171962093726793026483849163144962128892259315105148313993825453,40734138852254171962093726793026483849163144962128892259315105148313993825454,40734138852254171962093726793026483849163144962128892259315105148313993825455,40734138852254171962093726793026483849163144962128892259315105148313993825456,40734138852254171962093726793026483849163144962128892259315105148313993825457,40734138852254171962093726793026483849163144962128892259315105148313993825458,40734138852254171962093726793026483849163144962128892259315105148313993825459,40734138852254171962093726793026483849163144962128892259315105148313993825460,40734138852254171962093726793026483849163144962128892259315105148313993825461,40734138852254171962093726793026483849163144962128892259315105148313993825462,40734138852254171962093726793026483849163144962128892259315105148313993825463,40734138852254171962093726793026483849163144962128892259315105148313993825464,40734138852254171962093726793026483849163144962128892259315105148313993825465,40734138852254171962093726793026483849163144962128892259315105148313993825466,40734138852254171962093726793026483849163144962128892259315105148313993825467,40734138852254171962093726793026483849163144962128892259315105148313993825468,40734138852254171962093726793026483849163144962128892259315105148313993825469],"BigXj":[{"Coords":[29957866551444288658476350454857942692734557351100032691360819157091897571232,36516084228669802171659768461438209556386151343623994887856397017072741988372]},{"Coords":[47405980669639002124687519219913707250293554115260022083522701215817403509702,6956633993610953877720305833332948578423467581354172946924040631226828086263]},{"Coords":[18448325566171282313365171084287037248684936691904749885126674379501353453346,57542808379242682171071366265254456185195752776998290707742666662032232473622]},{"Coords":[798119792817890022465650864894266739550633881670097146590803382931084199002,18741616705198182206589511729301188460657955392768622916582367701785923387424]},{"Coords":[14524065198933915096660983495571495008260235612202009841821241149956652340934,162069773027357354579088193613939754572344398048294401250160042815055523396]},{"Coords":[2391511861628100895088988814765656118369224176176415534794931546222531191393,54978250562078788732535891657909173161508352364458206272900734945726006923944]},{"Coords":[33367545684625665916290843623923194353275614015826572202674111417892161420321,34552418317790324990966929588824151029743376389391432746282019503564426200611]},{"Coords":[453004606432256381667684448461219576328123204931667780295629476469381320335,24202636244659007772676161416986810172809713458728117448473736554568193288470]},{"Coords":[44318728173104604826550003017879014210227013712735183198372207299653903594205,55087473080850843015060234253261358005815826246456261778853783389363296224499]},{"Coords":[5097897464978708021234982103799161978473496892186061915228937112062938960292,39812599820868772665849683762267559082841521300551301780306710760212842213142]},{"Coords":[55801688604275193229895471092959853307614973751632662500004587523688279428992,17908790269314533447122947617750819476463804243432605334549377565373680755876]},{"Coords":[32196451128233400126962687457853805171503763230195900653815988022301169917854,10273285854850198960907924097749326069343899412006196915507281805160302832102]},{"Coords":[26398652979910650230881886450362073218710043900599396151821471419532983149715,3032814692424797993000494058354620844984917462544480255564224802193495430820]},{"Coords":[27236617586105103118624761259021831737235970883376501177552152583376986719238,2786011207236436994120124945804028682728444491790282961909091865945687955840]},{"Coords":[6500269738457737805717018971821598944446826873819309240030153246330846600187,54308477058519174622786176570543012641112928166620722474067812858680268430854]},{"Coords":[4652059627434138465834466819430362335203531466567637962754703362561726860984,18006877504897652595228402160133201981096960017662552547657957601542173068568]},{"Coords":[42705465432401668547671480078970955931365681662524360494488948437573630670729,37242984276081434326327463579899341679142344806501877280538421137197674554811]},{"Coords":[18501735463211215871442136946404860176100300228118646447712783974401612692211,55831398139586339034188706414537302757232734304622486782051369794171579576311]},{"Coords":[7385530367911231668221642462698546652820692326793989938132531831625569287435,12085977429229034609485085920553594147602092630530547749432190844231493145848]},{"Coords":[49366217028906791915740719671679644479230737403944270239462268252818931953988,25008491817774874184492999972971314605544442775664114331432153999032773052367]}],"EDDSAPub":{"Coords":[42175055170903350083404361365361390497000185285799325061444760830647516725091,33752718602899281735872279809218140168011871948094137689488348151553552496995]}} \ No newline at end of file diff --git a/test/_eddsa_fixtures/keygen_data_19.json b/test/_eddsa_fixtures/keygen_data_19.json new file mode 100644 index 00000000..76e90ec4 --- /dev/null +++ b/test/_eddsa_fixtures/keygen_data_19.json @@ -0,0 +1 @@ +{"Xi":5204698323580644027606815765592885488881961426971733158947112508553271193434,"ShareID":40734138852254171962093726793026483849163144962128892259315105148313993825469,"Ks":[40734138852254171962093726793026483849163144962128892259315105148313993825450,40734138852254171962093726793026483849163144962128892259315105148313993825451,40734138852254171962093726793026483849163144962128892259315105148313993825452,40734138852254171962093726793026483849163144962128892259315105148313993825453,40734138852254171962093726793026483849163144962128892259315105148313993825454,40734138852254171962093726793026483849163144962128892259315105148313993825455,40734138852254171962093726793026483849163144962128892259315105148313993825456,40734138852254171962093726793026483849163144962128892259315105148313993825457,40734138852254171962093726793026483849163144962128892259315105148313993825458,40734138852254171962093726793026483849163144962128892259315105148313993825459,40734138852254171962093726793026483849163144962128892259315105148313993825460,40734138852254171962093726793026483849163144962128892259315105148313993825461,40734138852254171962093726793026483849163144962128892259315105148313993825462,40734138852254171962093726793026483849163144962128892259315105148313993825463,40734138852254171962093726793026483849163144962128892259315105148313993825464,40734138852254171962093726793026483849163144962128892259315105148313993825465,40734138852254171962093726793026483849163144962128892259315105148313993825466,40734138852254171962093726793026483849163144962128892259315105148313993825467,40734138852254171962093726793026483849163144962128892259315105148313993825468,40734138852254171962093726793026483849163144962128892259315105148313993825469],"BigXj":[{"Coords":[29957866551444288658476350454857942692734557351100032691360819157091897571232,36516084228669802171659768461438209556386151343623994887856397017072741988372]},{"Coords":[47405980669639002124687519219913707250293554115260022083522701215817403509702,6956633993610953877720305833332948578423467581354172946924040631226828086263]},{"Coords":[18448325566171282313365171084287037248684936691904749885126674379501353453346,57542808379242682171071366265254456185195752776998290707742666662032232473622]},{"Coords":[798119792817890022465650864894266739550633881670097146590803382931084199002,18741616705198182206589511729301188460657955392768622916582367701785923387424]},{"Coords":[14524065198933915096660983495571495008260235612202009841821241149956652340934,162069773027357354579088193613939754572344398048294401250160042815055523396]},{"Coords":[2391511861628100895088988814765656118369224176176415534794931546222531191393,54978250562078788732535891657909173161508352364458206272900734945726006923944]},{"Coords":[33367545684625665916290843623923194353275614015826572202674111417892161420321,34552418317790324990966929588824151029743376389391432746282019503564426200611]},{"Coords":[453004606432256381667684448461219576328123204931667780295629476469381320335,24202636244659007772676161416986810172809713458728117448473736554568193288470]},{"Coords":[44318728173104604826550003017879014210227013712735183198372207299653903594205,55087473080850843015060234253261358005815826246456261778853783389363296224499]},{"Coords":[5097897464978708021234982103799161978473496892186061915228937112062938960292,39812599820868772665849683762267559082841521300551301780306710760212842213142]},{"Coords":[55801688604275193229895471092959853307614973751632662500004587523688279428992,17908790269314533447122947617750819476463804243432605334549377565373680755876]},{"Coords":[32196451128233400126962687457853805171503763230195900653815988022301169917854,10273285854850198960907924097749326069343899412006196915507281805160302832102]},{"Coords":[26398652979910650230881886450362073218710043900599396151821471419532983149715,3032814692424797993000494058354620844984917462544480255564224802193495430820]},{"Coords":[27236617586105103118624761259021831737235970883376501177552152583376986719238,2786011207236436994120124945804028682728444491790282961909091865945687955840]},{"Coords":[6500269738457737805717018971821598944446826873819309240030153246330846600187,54308477058519174622786176570543012641112928166620722474067812858680268430854]},{"Coords":[4652059627434138465834466819430362335203531466567637962754703362561726860984,18006877504897652595228402160133201981096960017662552547657957601542173068568]},{"Coords":[42705465432401668547671480078970955931365681662524360494488948437573630670729,37242984276081434326327463579899341679142344806501877280538421137197674554811]},{"Coords":[18501735463211215871442136946404860176100300228118646447712783974401612692211,55831398139586339034188706414537302757232734304622486782051369794171579576311]},{"Coords":[7385530367911231668221642462698546652820692326793989938132531831625569287435,12085977429229034609485085920553594147602092630530547749432190844231493145848]},{"Coords":[49366217028906791915740719671679644479230737403944270239462268252818931953988,25008491817774874184492999972971314605544442775664114331432153999032773052367]}],"EDDSAPub":{"Coords":[42175055170903350083404361365361390497000185285799325061444760830647516725091,33752718602899281735872279809218140168011871948094137689488348151553552496995]}} \ No newline at end of file diff --git a/test/_eddsa_fixtures/keygen_data_2.json b/test/_eddsa_fixtures/keygen_data_2.json new file mode 100644 index 00000000..be22505a --- /dev/null +++ b/test/_eddsa_fixtures/keygen_data_2.json @@ -0,0 +1 @@ +{"Xi":872133822970594263976239542698278517508809712383590934449908956501683125959,"ShareID":40734138852254171962093726793026483849163144962128892259315105148313993825452,"Ks":[40734138852254171962093726793026483849163144962128892259315105148313993825450,40734138852254171962093726793026483849163144962128892259315105148313993825451,40734138852254171962093726793026483849163144962128892259315105148313993825452,40734138852254171962093726793026483849163144962128892259315105148313993825453,40734138852254171962093726793026483849163144962128892259315105148313993825454,40734138852254171962093726793026483849163144962128892259315105148313993825455,40734138852254171962093726793026483849163144962128892259315105148313993825456,40734138852254171962093726793026483849163144962128892259315105148313993825457,40734138852254171962093726793026483849163144962128892259315105148313993825458,40734138852254171962093726793026483849163144962128892259315105148313993825459,40734138852254171962093726793026483849163144962128892259315105148313993825460,40734138852254171962093726793026483849163144962128892259315105148313993825461,40734138852254171962093726793026483849163144962128892259315105148313993825462,40734138852254171962093726793026483849163144962128892259315105148313993825463,40734138852254171962093726793026483849163144962128892259315105148313993825464,40734138852254171962093726793026483849163144962128892259315105148313993825465,40734138852254171962093726793026483849163144962128892259315105148313993825466,40734138852254171962093726793026483849163144962128892259315105148313993825467,40734138852254171962093726793026483849163144962128892259315105148313993825468,40734138852254171962093726793026483849163144962128892259315105148313993825469],"BigXj":[{"Coords":[29957866551444288658476350454857942692734557351100032691360819157091897571232,36516084228669802171659768461438209556386151343623994887856397017072741988372]},{"Coords":[47405980669639002124687519219913707250293554115260022083522701215817403509702,6956633993610953877720305833332948578423467581354172946924040631226828086263]},{"Coords":[18448325566171282313365171084287037248684936691904749885126674379501353453346,57542808379242682171071366265254456185195752776998290707742666662032232473622]},{"Coords":[798119792817890022465650864894266739550633881670097146590803382931084199002,18741616705198182206589511729301188460657955392768622916582367701785923387424]},{"Coords":[14524065198933915096660983495571495008260235612202009841821241149956652340934,162069773027357354579088193613939754572344398048294401250160042815055523396]},{"Coords":[2391511861628100895088988814765656118369224176176415534794931546222531191393,54978250562078788732535891657909173161508352364458206272900734945726006923944]},{"Coords":[33367545684625665916290843623923194353275614015826572202674111417892161420321,34552418317790324990966929588824151029743376389391432746282019503564426200611]},{"Coords":[453004606432256381667684448461219576328123204931667780295629476469381320335,24202636244659007772676161416986810172809713458728117448473736554568193288470]},{"Coords":[44318728173104604826550003017879014210227013712735183198372207299653903594205,55087473080850843015060234253261358005815826246456261778853783389363296224499]},{"Coords":[5097897464978708021234982103799161978473496892186061915228937112062938960292,39812599820868772665849683762267559082841521300551301780306710760212842213142]},{"Coords":[55801688604275193229895471092959853307614973751632662500004587523688279428992,17908790269314533447122947617750819476463804243432605334549377565373680755876]},{"Coords":[32196451128233400126962687457853805171503763230195900653815988022301169917854,10273285854850198960907924097749326069343899412006196915507281805160302832102]},{"Coords":[26398652979910650230881886450362073218710043900599396151821471419532983149715,3032814692424797993000494058354620844984917462544480255564224802193495430820]},{"Coords":[27236617586105103118624761259021831737235970883376501177552152583376986719238,2786011207236436994120124945804028682728444491790282961909091865945687955840]},{"Coords":[6500269738457737805717018971821598944446826873819309240030153246330846600187,54308477058519174622786176570543012641112928166620722474067812858680268430854]},{"Coords":[4652059627434138465834466819430362335203531466567637962754703362561726860984,18006877504897652595228402160133201981096960017662552547657957601542173068568]},{"Coords":[42705465432401668547671480078970955931365681662524360494488948437573630670729,37242984276081434326327463579899341679142344806501877280538421137197674554811]},{"Coords":[18501735463211215871442136946404860176100300228118646447712783974401612692211,55831398139586339034188706414537302757232734304622486782051369794171579576311]},{"Coords":[7385530367911231668221642462698546652820692326793989938132531831625569287435,12085977429229034609485085920553594147602092630530547749432190844231493145848]},{"Coords":[49366217028906791915740719671679644479230737403944270239462268252818931953988,25008491817774874184492999972971314605544442775664114331432153999032773052367]}],"EDDSAPub":{"Coords":[42175055170903350083404361365361390497000185285799325061444760830647516725091,33752718602899281735872279809218140168011871948094137689488348151553552496995]}} \ No newline at end of file diff --git a/test/_eddsa_fixtures/keygen_data_3.json b/test/_eddsa_fixtures/keygen_data_3.json new file mode 100644 index 00000000..e1e8037d --- /dev/null +++ b/test/_eddsa_fixtures/keygen_data_3.json @@ -0,0 +1 @@ +{"Xi":1179836229477984641418482962119419198917316245936841797929041104581714095832,"ShareID":40734138852254171962093726793026483849163144962128892259315105148313993825453,"Ks":[40734138852254171962093726793026483849163144962128892259315105148313993825450,40734138852254171962093726793026483849163144962128892259315105148313993825451,40734138852254171962093726793026483849163144962128892259315105148313993825452,40734138852254171962093726793026483849163144962128892259315105148313993825453,40734138852254171962093726793026483849163144962128892259315105148313993825454,40734138852254171962093726793026483849163144962128892259315105148313993825455,40734138852254171962093726793026483849163144962128892259315105148313993825456,40734138852254171962093726793026483849163144962128892259315105148313993825457,40734138852254171962093726793026483849163144962128892259315105148313993825458,40734138852254171962093726793026483849163144962128892259315105148313993825459,40734138852254171962093726793026483849163144962128892259315105148313993825460,40734138852254171962093726793026483849163144962128892259315105148313993825461,40734138852254171962093726793026483849163144962128892259315105148313993825462,40734138852254171962093726793026483849163144962128892259315105148313993825463,40734138852254171962093726793026483849163144962128892259315105148313993825464,40734138852254171962093726793026483849163144962128892259315105148313993825465,40734138852254171962093726793026483849163144962128892259315105148313993825466,40734138852254171962093726793026483849163144962128892259315105148313993825467,40734138852254171962093726793026483849163144962128892259315105148313993825468,40734138852254171962093726793026483849163144962128892259315105148313993825469],"BigXj":[{"Coords":[29957866551444288658476350454857942692734557351100032691360819157091897571232,36516084228669802171659768461438209556386151343623994887856397017072741988372]},{"Coords":[47405980669639002124687519219913707250293554115260022083522701215817403509702,6956633993610953877720305833332948578423467581354172946924040631226828086263]},{"Coords":[18448325566171282313365171084287037248684936691904749885126674379501353453346,57542808379242682171071366265254456185195752776998290707742666662032232473622]},{"Coords":[798119792817890022465650864894266739550633881670097146590803382931084199002,18741616705198182206589511729301188460657955392768622916582367701785923387424]},{"Coords":[14524065198933915096660983495571495008260235612202009841821241149956652340934,162069773027357354579088193613939754572344398048294401250160042815055523396]},{"Coords":[2391511861628100895088988814765656118369224176176415534794931546222531191393,54978250562078788732535891657909173161508352364458206272900734945726006923944]},{"Coords":[33367545684625665916290843623923194353275614015826572202674111417892161420321,34552418317790324990966929588824151029743376389391432746282019503564426200611]},{"Coords":[453004606432256381667684448461219576328123204931667780295629476469381320335,24202636244659007772676161416986810172809713458728117448473736554568193288470]},{"Coords":[44318728173104604826550003017879014210227013712735183198372207299653903594205,55087473080850843015060234253261358005815826246456261778853783389363296224499]},{"Coords":[5097897464978708021234982103799161978473496892186061915228937112062938960292,39812599820868772665849683762267559082841521300551301780306710760212842213142]},{"Coords":[55801688604275193229895471092959853307614973751632662500004587523688279428992,17908790269314533447122947617750819476463804243432605334549377565373680755876]},{"Coords":[32196451128233400126962687457853805171503763230195900653815988022301169917854,10273285854850198960907924097749326069343899412006196915507281805160302832102]},{"Coords":[26398652979910650230881886450362073218710043900599396151821471419532983149715,3032814692424797993000494058354620844984917462544480255564224802193495430820]},{"Coords":[27236617586105103118624761259021831737235970883376501177552152583376986719238,2786011207236436994120124945804028682728444491790282961909091865945687955840]},{"Coords":[6500269738457737805717018971821598944446826873819309240030153246330846600187,54308477058519174622786176570543012641112928166620722474067812858680268430854]},{"Coords":[4652059627434138465834466819430362335203531466567637962754703362561726860984,18006877504897652595228402160133201981096960017662552547657957601542173068568]},{"Coords":[42705465432401668547671480078970955931365681662524360494488948437573630670729,37242984276081434326327463579899341679142344806501877280538421137197674554811]},{"Coords":[18501735463211215871442136946404860176100300228118646447712783974401612692211,55831398139586339034188706414537302757232734304622486782051369794171579576311]},{"Coords":[7385530367911231668221642462698546652820692326793989938132531831625569287435,12085977429229034609485085920553594147602092630530547749432190844231493145848]},{"Coords":[49366217028906791915740719671679644479230737403944270239462268252818931953988,25008491817774874184492999972971314605544442775664114331432153999032773052367]}],"EDDSAPub":{"Coords":[42175055170903350083404361365361390497000185285799325061444760830647516725091,33752718602899281735872279809218140168011871948094137689488348151553552496995]}} \ No newline at end of file diff --git a/test/_eddsa_fixtures/keygen_data_4.json b/test/_eddsa_fixtures/keygen_data_4.json new file mode 100644 index 00000000..e57fb5c2 --- /dev/null +++ b/test/_eddsa_fixtures/keygen_data_4.json @@ -0,0 +1 @@ +{"Xi":5017669489520337100589122810632646133378593041253350621343210562932715161221,"ShareID":40734138852254171962093726793026483849163144962128892259315105148313993825454,"Ks":[40734138852254171962093726793026483849163144962128892259315105148313993825450,40734138852254171962093726793026483849163144962128892259315105148313993825451,40734138852254171962093726793026483849163144962128892259315105148313993825452,40734138852254171962093726793026483849163144962128892259315105148313993825453,40734138852254171962093726793026483849163144962128892259315105148313993825454,40734138852254171962093726793026483849163144962128892259315105148313993825455,40734138852254171962093726793026483849163144962128892259315105148313993825456,40734138852254171962093726793026483849163144962128892259315105148313993825457,40734138852254171962093726793026483849163144962128892259315105148313993825458,40734138852254171962093726793026483849163144962128892259315105148313993825459,40734138852254171962093726793026483849163144962128892259315105148313993825460,40734138852254171962093726793026483849163144962128892259315105148313993825461,40734138852254171962093726793026483849163144962128892259315105148313993825462,40734138852254171962093726793026483849163144962128892259315105148313993825463,40734138852254171962093726793026483849163144962128892259315105148313993825464,40734138852254171962093726793026483849163144962128892259315105148313993825465,40734138852254171962093726793026483849163144962128892259315105148313993825466,40734138852254171962093726793026483849163144962128892259315105148313993825467,40734138852254171962093726793026483849163144962128892259315105148313993825468,40734138852254171962093726793026483849163144962128892259315105148313993825469],"BigXj":[{"Coords":[29957866551444288658476350454857942692734557351100032691360819157091897571232,36516084228669802171659768461438209556386151343623994887856397017072741988372]},{"Coords":[47405980669639002124687519219913707250293554115260022083522701215817403509702,6956633993610953877720305833332948578423467581354172946924040631226828086263]},{"Coords":[18448325566171282313365171084287037248684936691904749885126674379501353453346,57542808379242682171071366265254456185195752776998290707742666662032232473622]},{"Coords":[798119792817890022465650864894266739550633881670097146590803382931084199002,18741616705198182206589511729301188460657955392768622916582367701785923387424]},{"Coords":[14524065198933915096660983495571495008260235612202009841821241149956652340934,162069773027357354579088193613939754572344398048294401250160042815055523396]},{"Coords":[2391511861628100895088988814765656118369224176176415534794931546222531191393,54978250562078788732535891657909173161508352364458206272900734945726006923944]},{"Coords":[33367545684625665916290843623923194353275614015826572202674111417892161420321,34552418317790324990966929588824151029743376389391432746282019503564426200611]},{"Coords":[453004606432256381667684448461219576328123204931667780295629476469381320335,24202636244659007772676161416986810172809713458728117448473736554568193288470]},{"Coords":[44318728173104604826550003017879014210227013712735183198372207299653903594205,55087473080850843015060234253261358005815826246456261778853783389363296224499]},{"Coords":[5097897464978708021234982103799161978473496892186061915228937112062938960292,39812599820868772665849683762267559082841521300551301780306710760212842213142]},{"Coords":[55801688604275193229895471092959853307614973751632662500004587523688279428992,17908790269314533447122947617750819476463804243432605334549377565373680755876]},{"Coords":[32196451128233400126962687457853805171503763230195900653815988022301169917854,10273285854850198960907924097749326069343899412006196915507281805160302832102]},{"Coords":[26398652979910650230881886450362073218710043900599396151821471419532983149715,3032814692424797993000494058354620844984917462544480255564224802193495430820]},{"Coords":[27236617586105103118624761259021831737235970883376501177552152583376986719238,2786011207236436994120124945804028682728444491790282961909091865945687955840]},{"Coords":[6500269738457737805717018971821598944446826873819309240030153246330846600187,54308477058519174622786176570543012641112928166620722474067812858680268430854]},{"Coords":[4652059627434138465834466819430362335203531466567637962754703362561726860984,18006877504897652595228402160133201981096960017662552547657957601542173068568]},{"Coords":[42705465432401668547671480078970955931365681662524360494488948437573630670729,37242984276081434326327463579899341679142344806501877280538421137197674554811]},{"Coords":[18501735463211215871442136946404860176100300228118646447712783974401612692211,55831398139586339034188706414537302757232734304622486782051369794171579576311]},{"Coords":[7385530367911231668221642462698546652820692326793989938132531831625569287435,12085977429229034609485085920553594147602092630530547749432190844231493145848]},{"Coords":[49366217028906791915740719671679644479230737403944270239462268252818931953988,25008491817774874184492999972971314605544442775664114331432153999032773052367]}],"EDDSAPub":{"Coords":[42175055170903350083404361365361390497000185285799325061444760830647516725091,33752718602899281735872279809218140168011871948094137689488348151553552496995]}} \ No newline at end of file diff --git a/test/_eddsa_fixtures/keygen_data_5.json b/test/_eddsa_fixtures/keygen_data_5.json new file mode 100644 index 00000000..8f7b32a4 --- /dev/null +++ b/test/_eddsa_fixtures/keygen_data_5.json @@ -0,0 +1 @@ +{"Xi":4765471521464052470070984911157841845886683306552259817170065272142575391856,"ShareID":40734138852254171962093726793026483849163144962128892259315105148313993825455,"Ks":[40734138852254171962093726793026483849163144962128892259315105148313993825450,40734138852254171962093726793026483849163144962128892259315105148313993825451,40734138852254171962093726793026483849163144962128892259315105148313993825452,40734138852254171962093726793026483849163144962128892259315105148313993825453,40734138852254171962093726793026483849163144962128892259315105148313993825454,40734138852254171962093726793026483849163144962128892259315105148313993825455,40734138852254171962093726793026483849163144962128892259315105148313993825456,40734138852254171962093726793026483849163144962128892259315105148313993825457,40734138852254171962093726793026483849163144962128892259315105148313993825458,40734138852254171962093726793026483849163144962128892259315105148313993825459,40734138852254171962093726793026483849163144962128892259315105148313993825460,40734138852254171962093726793026483849163144962128892259315105148313993825461,40734138852254171962093726793026483849163144962128892259315105148313993825462,40734138852254171962093726793026483849163144962128892259315105148313993825463,40734138852254171962093726793026483849163144962128892259315105148313993825464,40734138852254171962093726793026483849163144962128892259315105148313993825465,40734138852254171962093726793026483849163144962128892259315105148313993825466,40734138852254171962093726793026483849163144962128892259315105148313993825467,40734138852254171962093726793026483849163144962128892259315105148313993825468,40734138852254171962093726793026483849163144962128892259315105148313993825469],"BigXj":[{"Coords":[29957866551444288658476350454857942692734557351100032691360819157091897571232,36516084228669802171659768461438209556386151343623994887856397017072741988372]},{"Coords":[47405980669639002124687519219913707250293554115260022083522701215817403509702,6956633993610953877720305833332948578423467581354172946924040631226828086263]},{"Coords":[18448325566171282313365171084287037248684936691904749885126674379501353453346,57542808379242682171071366265254456185195752776998290707742666662032232473622]},{"Coords":[798119792817890022465650864894266739550633881670097146590803382931084199002,18741616705198182206589511729301188460657955392768622916582367701785923387424]},{"Coords":[14524065198933915096660983495571495008260235612202009841821241149956652340934,162069773027357354579088193613939754572344398048294401250160042815055523396]},{"Coords":[2391511861628100895088988814765656118369224176176415534794931546222531191393,54978250562078788732535891657909173161508352364458206272900734945726006923944]},{"Coords":[33367545684625665916290843623923194353275614015826572202674111417892161420321,34552418317790324990966929588824151029743376389391432746282019503564426200611]},{"Coords":[453004606432256381667684448461219576328123204931667780295629476469381320335,24202636244659007772676161416986810172809713458728117448473736554568193288470]},{"Coords":[44318728173104604826550003017879014210227013712735183198372207299653903594205,55087473080850843015060234253261358005815826246456261778853783389363296224499]},{"Coords":[5097897464978708021234982103799161978473496892186061915228937112062938960292,39812599820868772665849683762267559082841521300551301780306710760212842213142]},{"Coords":[55801688604275193229895471092959853307614973751632662500004587523688279428992,17908790269314533447122947617750819476463804243432605334549377565373680755876]},{"Coords":[32196451128233400126962687457853805171503763230195900653815988022301169917854,10273285854850198960907924097749326069343899412006196915507281805160302832102]},{"Coords":[26398652979910650230881886450362073218710043900599396151821471419532983149715,3032814692424797993000494058354620844984917462544480255564224802193495430820]},{"Coords":[27236617586105103118624761259021831737235970883376501177552152583376986719238,2786011207236436994120124945804028682728444491790282961909091865945687955840]},{"Coords":[6500269738457737805717018971821598944446826873819309240030153246330846600187,54308477058519174622786176570543012641112928166620722474067812858680268430854]},{"Coords":[4652059627434138465834466819430362335203531466567637962754703362561726860984,18006877504897652595228402160133201981096960017662552547657957601542173068568]},{"Coords":[42705465432401668547671480078970955931365681662524360494488948437573630670729,37242984276081434326327463579899341679142344806501877280538421137197674554811]},{"Coords":[18501735463211215871442136946404860176100300228118646447712783974401612692211,55831398139586339034188706414537302757232734304622486782051369794171579576311]},{"Coords":[7385530367911231668221642462698546652820692326793989938132531831625569287435,12085977429229034609485085920553594147602092630530547749432190844231493145848]},{"Coords":[49366217028906791915740719671679644479230737403944270239462268252818931953988,25008491817774874184492999972971314605544442775664114331432153999032773052367]}],"EDDSAPub":{"Coords":[42175055170903350083404361365361390497000185285799325061444760830647516725091,33752718602899281735872279809218140168011871948094137689488348151553552496995]}} \ No newline at end of file diff --git a/test/_eddsa_fixtures/keygen_data_6.json b/test/_eddsa_fixtures/keygen_data_6.json new file mode 100644 index 00000000..5f4efa22 --- /dev/null +++ b/test/_eddsa_fixtures/keygen_data_6.json @@ -0,0 +1 @@ +{"Xi":1045892474936059251985659170102725504923897290191611725843576974027994030581,"ShareID":40734138852254171962093726793026483849163144962128892259315105148313993825456,"Ks":[40734138852254171962093726793026483849163144962128892259315105148313993825450,40734138852254171962093726793026483849163144962128892259315105148313993825451,40734138852254171962093726793026483849163144962128892259315105148313993825452,40734138852254171962093726793026483849163144962128892259315105148313993825453,40734138852254171962093726793026483849163144962128892259315105148313993825454,40734138852254171962093726793026483849163144962128892259315105148313993825455,40734138852254171962093726793026483849163144962128892259315105148313993825456,40734138852254171962093726793026483849163144962128892259315105148313993825457,40734138852254171962093726793026483849163144962128892259315105148313993825458,40734138852254171962093726793026483849163144962128892259315105148313993825459,40734138852254171962093726793026483849163144962128892259315105148313993825460,40734138852254171962093726793026483849163144962128892259315105148313993825461,40734138852254171962093726793026483849163144962128892259315105148313993825462,40734138852254171962093726793026483849163144962128892259315105148313993825463,40734138852254171962093726793026483849163144962128892259315105148313993825464,40734138852254171962093726793026483849163144962128892259315105148313993825465,40734138852254171962093726793026483849163144962128892259315105148313993825466,40734138852254171962093726793026483849163144962128892259315105148313993825467,40734138852254171962093726793026483849163144962128892259315105148313993825468,40734138852254171962093726793026483849163144962128892259315105148313993825469],"BigXj":[{"Coords":[29957866551444288658476350454857942692734557351100032691360819157091897571232,36516084228669802171659768461438209556386151343623994887856397017072741988372]},{"Coords":[47405980669639002124687519219913707250293554115260022083522701215817403509702,6956633993610953877720305833332948578423467581354172946924040631226828086263]},{"Coords":[18448325566171282313365171084287037248684936691904749885126674379501353453346,57542808379242682171071366265254456185195752776998290707742666662032232473622]},{"Coords":[798119792817890022465650864894266739550633881670097146590803382931084199002,18741616705198182206589511729301188460657955392768622916582367701785923387424]},{"Coords":[14524065198933915096660983495571495008260235612202009841821241149956652340934,162069773027357354579088193613939754572344398048294401250160042815055523396]},{"Coords":[2391511861628100895088988814765656118369224176176415534794931546222531191393,54978250562078788732535891657909173161508352364458206272900734945726006923944]},{"Coords":[33367545684625665916290843623923194353275614015826572202674111417892161420321,34552418317790324990966929588824151029743376389391432746282019503564426200611]},{"Coords":[453004606432256381667684448461219576328123204931667780295629476469381320335,24202636244659007772676161416986810172809713458728117448473736554568193288470]},{"Coords":[44318728173104604826550003017879014210227013712735183198372207299653903594205,55087473080850843015060234253261358005815826246456261778853783389363296224499]},{"Coords":[5097897464978708021234982103799161978473496892186061915228937112062938960292,39812599820868772665849683762267559082841521300551301780306710760212842213142]},{"Coords":[55801688604275193229895471092959853307614973751632662500004587523688279428992,17908790269314533447122947617750819476463804243432605334549377565373680755876]},{"Coords":[32196451128233400126962687457853805171503763230195900653815988022301169917854,10273285854850198960907924097749326069343899412006196915507281805160302832102]},{"Coords":[26398652979910650230881886450362073218710043900599396151821471419532983149715,3032814692424797993000494058354620844984917462544480255564224802193495430820]},{"Coords":[27236617586105103118624761259021831737235970883376501177552152583376986719238,2786011207236436994120124945804028682728444491790282961909091865945687955840]},{"Coords":[6500269738457737805717018971821598944446826873819309240030153246330846600187,54308477058519174622786176570543012641112928166620722474067812858680268430854]},{"Coords":[4652059627434138465834466819430362335203531466567637962754703362561726860984,18006877504897652595228402160133201981096960017662552547657957601542173068568]},{"Coords":[42705465432401668547671480078970955931365681662524360494488948437573630670729,37242984276081434326327463579899341679142344806501877280538421137197674554811]},{"Coords":[18501735463211215871442136946404860176100300228118646447712783974401612692211,55831398139586339034188706414537302757232734304622486782051369794171579576311]},{"Coords":[7385530367911231668221642462698546652820692326793989938132531831625569287435,12085977429229034609485085920553594147602092630530547749432190844231493145848]},{"Coords":[49366217028906791915740719671679644479230737403944270239462268252818931953988,25008491817774874184492999972971314605544442775664114331432153999032773052367]}],"EDDSAPub":{"Coords":[42175055170903350083404361365361390497000185285799325061444760830647516725091,33752718602899281735872279809218140168011871948094137689488348151553552496995]}} \ No newline at end of file diff --git a/test/_eddsa_fixtures/keygen_data_7.json b/test/_eddsa_fixtures/keygen_data_7.json new file mode 100644 index 00000000..ed10ea51 --- /dev/null +++ b/test/_eddsa_fixtures/keygen_data_7.json @@ -0,0 +1 @@ +{"Xi":4041926922956203584528365898533497289190576165251745887001630247571429018585,"ShareID":40734138852254171962093726793026483849163144962128892259315105148313993825457,"Ks":[40734138852254171962093726793026483849163144962128892259315105148313993825450,40734138852254171962093726793026483849163144962128892259315105148313993825451,40734138852254171962093726793026483849163144962128892259315105148313993825452,40734138852254171962093726793026483849163144962128892259315105148313993825453,40734138852254171962093726793026483849163144962128892259315105148313993825454,40734138852254171962093726793026483849163144962128892259315105148313993825455,40734138852254171962093726793026483849163144962128892259315105148313993825456,40734138852254171962093726793026483849163144962128892259315105148313993825457,40734138852254171962093726793026483849163144962128892259315105148313993825458,40734138852254171962093726793026483849163144962128892259315105148313993825459,40734138852254171962093726793026483849163144962128892259315105148313993825460,40734138852254171962093726793026483849163144962128892259315105148313993825461,40734138852254171962093726793026483849163144962128892259315105148313993825462,40734138852254171962093726793026483849163144962128892259315105148313993825463,40734138852254171962093726793026483849163144962128892259315105148313993825464,40734138852254171962093726793026483849163144962128892259315105148313993825465,40734138852254171962093726793026483849163144962128892259315105148313993825466,40734138852254171962093726793026483849163144962128892259315105148313993825467,40734138852254171962093726793026483849163144962128892259315105148313993825468,40734138852254171962093726793026483849163144962128892259315105148313993825469],"BigXj":[{"Coords":[29957866551444288658476350454857942692734557351100032691360819157091897571232,36516084228669802171659768461438209556386151343623994887856397017072741988372]},{"Coords":[47405980669639002124687519219913707250293554115260022083522701215817403509702,6956633993610953877720305833332948578423467581354172946924040631226828086263]},{"Coords":[18448325566171282313365171084287037248684936691904749885126674379501353453346,57542808379242682171071366265254456185195752776998290707742666662032232473622]},{"Coords":[798119792817890022465650864894266739550633881670097146590803382931084199002,18741616705198182206589511729301188460657955392768622916582367701785923387424]},{"Coords":[14524065198933915096660983495571495008260235612202009841821241149956652340934,162069773027357354579088193613939754572344398048294401250160042815055523396]},{"Coords":[2391511861628100895088988814765656118369224176176415534794931546222531191393,54978250562078788732535891657909173161508352364458206272900734945726006923944]},{"Coords":[33367545684625665916290843623923194353275614015826572202674111417892161420321,34552418317790324990966929588824151029743376389391432746282019503564426200611]},{"Coords":[453004606432256381667684448461219576328123204931667780295629476469381320335,24202636244659007772676161416986810172809713458728117448473736554568193288470]},{"Coords":[44318728173104604826550003017879014210227013712735183198372207299653903594205,55087473080850843015060234253261358005815826246456261778853783389363296224499]},{"Coords":[5097897464978708021234982103799161978473496892186061915228937112062938960292,39812599820868772665849683762267559082841521300551301780306710760212842213142]},{"Coords":[55801688604275193229895471092959853307614973751632662500004587523688279428992,17908790269314533447122947617750819476463804243432605334549377565373680755876]},{"Coords":[32196451128233400126962687457853805171503763230195900653815988022301169917854,10273285854850198960907924097749326069343899412006196915507281805160302832102]},{"Coords":[26398652979910650230881886450362073218710043900599396151821471419532983149715,3032814692424797993000494058354620844984917462544480255564224802193495430820]},{"Coords":[27236617586105103118624761259021831737235970883376501177552152583376986719238,2786011207236436994120124945804028682728444491790282961909091865945687955840]},{"Coords":[6500269738457737805717018971821598944446826873819309240030153246330846600187,54308477058519174622786176570543012641112928166620722474067812858680268430854]},{"Coords":[4652059627434138465834466819430362335203531466567637962754703362561726860984,18006877504897652595228402160133201981096960017662552547657957601542173068568]},{"Coords":[42705465432401668547671480078970955931365681662524360494488948437573630670729,37242984276081434326327463579899341679142344806501877280538421137197674554811]},{"Coords":[18501735463211215871442136946404860176100300228118646447712783974401612692211,55831398139586339034188706414537302757232734304622486782051369794171579576311]},{"Coords":[7385530367911231668221642462698546652820692326793989938132531831625569287435,12085977429229034609485085920553594147602092630530547749432190844231493145848]},{"Coords":[49366217028906791915740719671679644479230737403944270239462268252818931953988,25008491817774874184492999972971314605544442775664114331432153999032773052367]}],"EDDSAPub":{"Coords":[42175055170903350083404361365361390497000185285799325061444760830647516725091,33752718602899281735872279809218140168011871948094137689488348151553552496995]}} \ No newline at end of file diff --git a/test/_eddsa_fixtures/keygen_data_8.json b/test/_eddsa_fixtures/keygen_data_8.json new file mode 100644 index 00000000..ced47850 --- /dev/null +++ b/test/_eddsa_fixtures/keygen_data_8.json @@ -0,0 +1 @@ +{"Xi":4424331354155150752871085145208343995276421178095495124698480820719825522042,"ShareID":40734138852254171962093726793026483849163144962128892259315105148313993825458,"Ks":[40734138852254171962093726793026483849163144962128892259315105148313993825450,40734138852254171962093726793026483849163144962128892259315105148313993825451,40734138852254171962093726793026483849163144962128892259315105148313993825452,40734138852254171962093726793026483849163144962128892259315105148313993825453,40734138852254171962093726793026483849163144962128892259315105148313993825454,40734138852254171962093726793026483849163144962128892259315105148313993825455,40734138852254171962093726793026483849163144962128892259315105148313993825456,40734138852254171962093726793026483849163144962128892259315105148313993825457,40734138852254171962093726793026483849163144962128892259315105148313993825458,40734138852254171962093726793026483849163144962128892259315105148313993825459,40734138852254171962093726793026483849163144962128892259315105148313993825460,40734138852254171962093726793026483849163144962128892259315105148313993825461,40734138852254171962093726793026483849163144962128892259315105148313993825462,40734138852254171962093726793026483849163144962128892259315105148313993825463,40734138852254171962093726793026483849163144962128892259315105148313993825464,40734138852254171962093726793026483849163144962128892259315105148313993825465,40734138852254171962093726793026483849163144962128892259315105148313993825466,40734138852254171962093726793026483849163144962128892259315105148313993825467,40734138852254171962093726793026483849163144962128892259315105148313993825468,40734138852254171962093726793026483849163144962128892259315105148313993825469],"BigXj":[{"Coords":[29957866551444288658476350454857942692734557351100032691360819157091897571232,36516084228669802171659768461438209556386151343623994887856397017072741988372]},{"Coords":[47405980669639002124687519219913707250293554115260022083522701215817403509702,6956633993610953877720305833332948578423467581354172946924040631226828086263]},{"Coords":[18448325566171282313365171084287037248684936691904749885126674379501353453346,57542808379242682171071366265254456185195752776998290707742666662032232473622]},{"Coords":[798119792817890022465650864894266739550633881670097146590803382931084199002,18741616705198182206589511729301188460657955392768622916582367701785923387424]},{"Coords":[14524065198933915096660983495571495008260235612202009841821241149956652340934,162069773027357354579088193613939754572344398048294401250160042815055523396]},{"Coords":[2391511861628100895088988814765656118369224176176415534794931546222531191393,54978250562078788732535891657909173161508352364458206272900734945726006923944]},{"Coords":[33367545684625665916290843623923194353275614015826572202674111417892161420321,34552418317790324990966929588824151029743376389391432746282019503564426200611]},{"Coords":[453004606432256381667684448461219576328123204931667780295629476469381320335,24202636244659007772676161416986810172809713458728117448473736554568193288470]},{"Coords":[44318728173104604826550003017879014210227013712735183198372207299653903594205,55087473080850843015060234253261358005815826246456261778853783389363296224499]},{"Coords":[5097897464978708021234982103799161978473496892186061915228937112062938960292,39812599820868772665849683762267559082841521300551301780306710760212842213142]},{"Coords":[55801688604275193229895471092959853307614973751632662500004587523688279428992,17908790269314533447122947617750819476463804243432605334549377565373680755876]},{"Coords":[32196451128233400126962687457853805171503763230195900653815988022301169917854,10273285854850198960907924097749326069343899412006196915507281805160302832102]},{"Coords":[26398652979910650230881886450362073218710043900599396151821471419532983149715,3032814692424797993000494058354620844984917462544480255564224802193495430820]},{"Coords":[27236617586105103118624761259021831737235970883376501177552152583376986719238,2786011207236436994120124945804028682728444491790282961909091865945687955840]},{"Coords":[6500269738457737805717018971821598944446826873819309240030153246330846600187,54308477058519174622786176570543012641112928166620722474067812858680268430854]},{"Coords":[4652059627434138465834466819430362335203531466567637962754703362561726860984,18006877504897652595228402160133201981096960017662552547657957601542173068568]},{"Coords":[42705465432401668547671480078970955931365681662524360494488948437573630670729,37242984276081434326327463579899341679142344806501877280538421137197674554811]},{"Coords":[18501735463211215871442136946404860176100300228118646447712783974401612692211,55831398139586339034188706414537302757232734304622486782051369794171579576311]},{"Coords":[7385530367911231668221642462698546652820692326793989938132531831625569287435,12085977429229034609485085920553594147602092630530547749432190844231493145848]},{"Coords":[49366217028906791915740719671679644479230737403944270239462268252818931953988,25008491817774874184492999972971314605544442775664114331432153999032773052367]}],"EDDSAPub":{"Coords":[42175055170903350083404361365361390497000185285799325061444760830647516725091,33752718602899281735872279809218140168011871948094137689488348151553552496995]}} \ No newline at end of file diff --git a/test/_eddsa_fixtures/keygen_data_9.json b/test/_eddsa_fixtures/keygen_data_9.json new file mode 100644 index 00000000..a7386de2 --- /dev/null +++ b/test/_eddsa_fixtures/keygen_data_9.json @@ -0,0 +1 @@ +{"Xi":4107694223360230897865014039477631043773881150017797542034694187907332099878,"ShareID":40734138852254171962093726793026483849163144962128892259315105148313993825459,"Ks":[40734138852254171962093726793026483849163144962128892259315105148313993825450,40734138852254171962093726793026483849163144962128892259315105148313993825451,40734138852254171962093726793026483849163144962128892259315105148313993825452,40734138852254171962093726793026483849163144962128892259315105148313993825453,40734138852254171962093726793026483849163144962128892259315105148313993825454,40734138852254171962093726793026483849163144962128892259315105148313993825455,40734138852254171962093726793026483849163144962128892259315105148313993825456,40734138852254171962093726793026483849163144962128892259315105148313993825457,40734138852254171962093726793026483849163144962128892259315105148313993825458,40734138852254171962093726793026483849163144962128892259315105148313993825459,40734138852254171962093726793026483849163144962128892259315105148313993825460,40734138852254171962093726793026483849163144962128892259315105148313993825461,40734138852254171962093726793026483849163144962128892259315105148313993825462,40734138852254171962093726793026483849163144962128892259315105148313993825463,40734138852254171962093726793026483849163144962128892259315105148313993825464,40734138852254171962093726793026483849163144962128892259315105148313993825465,40734138852254171962093726793026483849163144962128892259315105148313993825466,40734138852254171962093726793026483849163144962128892259315105148313993825467,40734138852254171962093726793026483849163144962128892259315105148313993825468,40734138852254171962093726793026483849163144962128892259315105148313993825469],"BigXj":[{"Coords":[29957866551444288658476350454857942692734557351100032691360819157091897571232,36516084228669802171659768461438209556386151343623994887856397017072741988372]},{"Coords":[47405980669639002124687519219913707250293554115260022083522701215817403509702,6956633993610953877720305833332948578423467581354172946924040631226828086263]},{"Coords":[18448325566171282313365171084287037248684936691904749885126674379501353453346,57542808379242682171071366265254456185195752776998290707742666662032232473622]},{"Coords":[798119792817890022465650864894266739550633881670097146590803382931084199002,18741616705198182206589511729301188460657955392768622916582367701785923387424]},{"Coords":[14524065198933915096660983495571495008260235612202009841821241149956652340934,162069773027357354579088193613939754572344398048294401250160042815055523396]},{"Coords":[2391511861628100895088988814765656118369224176176415534794931546222531191393,54978250562078788732535891657909173161508352364458206272900734945726006923944]},{"Coords":[33367545684625665916290843623923194353275614015826572202674111417892161420321,34552418317790324990966929588824151029743376389391432746282019503564426200611]},{"Coords":[453004606432256381667684448461219576328123204931667780295629476469381320335,24202636244659007772676161416986810172809713458728117448473736554568193288470]},{"Coords":[44318728173104604826550003017879014210227013712735183198372207299653903594205,55087473080850843015060234253261358005815826246456261778853783389363296224499]},{"Coords":[5097897464978708021234982103799161978473496892186061915228937112062938960292,39812599820868772665849683762267559082841521300551301780306710760212842213142]},{"Coords":[55801688604275193229895471092959853307614973751632662500004587523688279428992,17908790269314533447122947617750819476463804243432605334549377565373680755876]},{"Coords":[32196451128233400126962687457853805171503763230195900653815988022301169917854,10273285854850198960907924097749326069343899412006196915507281805160302832102]},{"Coords":[26398652979910650230881886450362073218710043900599396151821471419532983149715,3032814692424797993000494058354620844984917462544480255564224802193495430820]},{"Coords":[27236617586105103118624761259021831737235970883376501177552152583376986719238,2786011207236436994120124945804028682728444491790282961909091865945687955840]},{"Coords":[6500269738457737805717018971821598944446826873819309240030153246330846600187,54308477058519174622786176570543012641112928166620722474067812858680268430854]},{"Coords":[4652059627434138465834466819430362335203531466567637962754703362561726860984,18006877504897652595228402160133201981096960017662552547657957601542173068568]},{"Coords":[42705465432401668547671480078970955931365681662524360494488948437573630670729,37242984276081434326327463579899341679142344806501877280538421137197674554811]},{"Coords":[18501735463211215871442136946404860176100300228118646447712783974401612692211,55831398139586339034188706414537302757232734304622486782051369794171579576311]},{"Coords":[7385530367911231668221642462698546652820692326793989938132531831625569287435,12085977429229034609485085920553594147602092630530547749432190844231493145848]},{"Coords":[49366217028906791915740719671679644479230737403944270239462268252818931953988,25008491817774874184492999972971314605544442775664114331432153999032773052367]}],"EDDSAPub":{"Coords":[42175055170903350083404361365361390497000185285799325061444760830647516725091,33752718602899281735872279809218140168011871948094137689488348151553552496995]}} \ No newline at end of file diff --git a/test/_fixtures/keygen_data_0.json b/test/_fixtures/keygen_data_0.json deleted file mode 100644 index ea6f41ba..00000000 --- a/test/_fixtures/keygen_data_0.json +++ /dev/null @@ -1 +0,0 @@ -{"PaillierSK":{"N":22709559588116531632086995360614881758145847958604375585917706994116168375700793376291131544827864145364687259129107134734036373558516565338923959924703156876435469021413354399418993619174071015237246272863140297401272631661028437511282301913323857011886496541494453371682094558243513835287198378640755589750985308457641295136946180231598093936765306071278862423297167033582450972276390473663053961764398615170355333807856718875047329620163477731845253445115727590642190491372191245975524943279344261890117425706855830582201691939059698357650223528988243289388677629074389631868130733940366531485671699566601163615661,"LambdaN":11354779794058265816043497680307440879072923979302187792958853497058084187850396688145565772413932072682343629564553567367018186779258282669461979962351578438217734510706677199709496809587035507618623136431570148700636315830514218755641150956661928505943248270747226685841047279121756917643599189320377794875341494108909590767254101622384460486225359882936205946032094167166282114955609315235064790929412128509912332625472823705012911596226636147188737385385204000897224410465664347069575063485620545541898394872758344865333760350371279236092204655717916279919219607664252708639654414937001075265784427473331184383262,"PhiN":22709559588116531632086995360614881758145847958604375585917706994116168375700793376291131544827864145364687259129107134734036373558516565338923959924703156876435469021413354399418993619174071015237246272863140297401272631661028437511282301913323857011886496541494453371682094558243513835287198378640755589750682988217819181534508203244768920972450719765872411892064188334332564229911218630470129581858824257019824665250945647410025823192453272294377474770770408001794448820931328694139150126971241091083796789745516689730667520700742558472184409311435832559838439215328505417279308829874002150531568854946662368766524},"NTildei":24366917239515824974480442558600034492208859976504581465004349103795399783288421050831073024860369440303795551299953821996018530997630686285237603133194573622718124597460737572013930327249120648302190449742363261573076443183981343509885970573178298207488759436277685910850783372123719807298277837194569211839837465137044422691734879346883675317045008891659749391963717253895556693016508386391015178130161988317310806894350108084212611277788190739249760699147435109968242744158314817905689533615803297627887736048945645075792686416602832677541152918424023805280241226851534199867283487943291927564365275467582581271053,"H1i":10024025457847388392610646066298514243370787348338532750631360639913721829629888261433439914402718667116400994500512300775136069581637894623537510481269716297031115527602912311323880048384727148486222115704187210174101029381357780998875764924841198846224052749406474209451141960414618133437662859572202780961023516801781475926753784006105642819239485607653090319392184244933555747381471676665633830261574288841173438644814600240117247473386184548108338325639763390271130259071021112922069642676901166841167199223435257080313456925802886649375691201308332777566495693037805296244451983094124223174758130752134991251259,"H2i":3368171208877966911054339907901878144315427177489764716664525147952589494997571345476952466465636584372230416806643927079294770772639785886747559841089671070120102511739419185926825275343129268693107584218806327021288882477748577914215697371729166784288283440868236399459954587383445757960644874348547417850473459042890356424271874499317095341286743556259239705095932387025485711185437452734962326711790258196775033662070121656155183933539103178989257156247756946175745703344908852193344259286268186560067884170926994359970521939453852919421341990972981960061011629945378288288327928173529860414633963687461741921536,"Alpha":17872935790650481976410458379511193501038609093619071353060442890936785153648575570645412256989659887325513411087443486248851599509740251407303006383746427765206180958072907675912654806615779854247267436084140198586644805781931487792404902244069367063374082117110711757272289232275767393446113180355788290091601210908669296121711521423457181664229641787674461757963623031150340832946328592137149637913812317941208137339707776105484625354916440582040261526518674551154516999704516721320406888310263795250392173973888035418014960208535138395008408397002360844252394549913352718702072078049319142091393846683226088343740,"Beta":4045319058708410072215014411107323821937638557761794415133518296761101806777992307532471778207686291347696028518085434039283159839566869728535135589455988743993544950636055566731538045532705909773655712764932424864495004779944813659003429410650663493188378680842342492170997180509785547764203598028750282680460025066487745481482794749451205505397648330100098002577628794826100825217766968991839484886294371434190361907997521038298148735464866293569185405659092032814490992657109750305792843383749920699528816027343817454476764745621963993233542808861640870006060407146833061705340290779372391511060366576961475716111,"P":70001994503536237891186396015321338008858550267087195913648090273412189684411794970702256179726515665476056639536414932593008042283721962709756028045897442247952201710626731108330228263242674670133773190261031230433808815652586241666117021416092645119069212914992961226044098836410950476474836148300291355143,"Q":87022224910623438800959011974460245831036859131677076790260335671275433941517354210322894635913660069505982368769443951136840108222672142029535123149349934380185633929484334263018380175805260139122047883918302977209129139728386772501651812255379642974375384899797860840483239969563231287797958037356256379409,"Xi":34093511445856130245744043698763943756969410753460823819613797286177447065498,"ShareID":70024534756929667616115849317753032895580033020239899587896153938577578972749,"Ks":[70024534756929667616115849317753032895580033020239899587896153938577578972749,70024534756929667616115849317753032895580033020239899587896153938577578972750,70024534756929667616115849317753032895580033020239899587896153938577578972751,70024534756929667616115849317753032895580033020239899587896153938577578972752,70024534756929667616115849317753032895580033020239899587896153938577578972753,70024534756929667616115849317753032895580033020239899587896153938577578972754,70024534756929667616115849317753032895580033020239899587896153938577578972755,70024534756929667616115849317753032895580033020239899587896153938577578972756,70024534756929667616115849317753032895580033020239899587896153938577578972757,70024534756929667616115849317753032895580033020239899587896153938577578972758,70024534756929667616115849317753032895580033020239899587896153938577578972759,70024534756929667616115849317753032895580033020239899587896153938577578972760,70024534756929667616115849317753032895580033020239899587896153938577578972761,70024534756929667616115849317753032895580033020239899587896153938577578972762,70024534756929667616115849317753032895580033020239899587896153938577578972763,70024534756929667616115849317753032895580033020239899587896153938577578972764,70024534756929667616115849317753032895580033020239899587896153938577578972765,70024534756929667616115849317753032895580033020239899587896153938577578972766,70024534756929667616115849317753032895580033020239899587896153938577578972767,70024534756929667616115849317753032895580033020239899587896153938577578972768],"NTildej":[24366917239515824974480442558600034492208859976504581465004349103795399783288421050831073024860369440303795551299953821996018530997630686285237603133194573622718124597460737572013930327249120648302190449742363261573076443183981343509885970573178298207488759436277685910850783372123719807298277837194569211839837465137044422691734879346883675317045008891659749391963717253895556693016508386391015178130161988317310806894350108084212611277788190739249760699147435109968242744158314817905689533615803297627887736048945645075792686416602832677541152918424023805280241226851534199867283487943291927564365275467582581271053,24760645214372673899925400730945520473062951341429554908754617530444794660401836428698520741646966955149111758288194803110363170964340801072472223878272430220722034553855593944561986134993071918255771235073978495918874383067260043443905506152815841034811512510858407909698555608803009379935760654878372301870950275270724586431009354962811874333750886958869738872804882633350285507993032763679234057221556156642769183354423672540429587887851343483914923600996425040023829456198369968692844034517720322057627565080062766276792221145223750390964637842847390939964073972850018793739320669513533403812272268817559996728177,24335507174653830446370401218472354012341984065893977351232759664219171991998539382418393419142907217562914494098827810315198583692551476438232634594991137003295122745831430159532586451010818106345725278793436836406022036374386618877645773128457664942790386603953998246404350465143928182109615440037926218085391564421745517307996722808502413850991173460229650178023548969664557299385141472097112836353938598657235574893430259143862369227601052831476146199261368117297723539373329843815951236997008000605506966102265798289158763516254914284024816124992986001907541315389832578466014006010753144367487203071067653140017,25353120959776139123294155818546513426444543204238814947681743626639583989194265533184090862296087842527526282860965927846515276605818147773016966742984780344247645856238734726222917730082852005118152200740071409410429096265046046476115230269737050878141459099734884888260830179970728221214610731604157017545322535971152193773221758709395769765431078738204491094323008301356895841037132747444047830530409305765562694358003007195242702308043142399969256485870876259711230128209178441443167004632638027691911658424285106297785382963002590496015895572427776988235599297735903480964253948429971597628412447354914215359401,29849885402332341621158797110436829396646924395042456662853244309209629024048299162272105169817115314715561658954210859089958590864101117136365470947498907594068557026997249170993874294161892140147876022164668279854630146959174794473879294364568105935870579392660025720467645329300426773479121856766502569984218591054914763859996476236063750210092775547343099066989888106146219058807079888624162205626100491953381078296178689026680702514982189001052448223393538379392778307314168895065497502603308074595916000270844935723623383768691838356870704054233137068509668072099435779943491520206735659166266930856700483211181,24303346306264095483727907643814355785838936488512300414348142784703917728792656928355740144163123550572150171398192480623395181408570425672723511597546032812698562984141032629389936754449924613948711482870260420456913877526422469201798411517711928654451945040790337077196569240216228957228264615761147375423719114756511538399142649755527243797217920772594702713281103939163745422429156605226253637010451757984598979666631182977221341184990723224510127460146263007980086670575857365789365543477249518437176817144448210584125518855115672157465775432933601089465408090382773104140011964681476656187299047937685144419517,22663176204438991528847068755997123453980704364589354833944958947785385672266299429364336994892902925142195136026995771544990684289261678272550855925683439714148609523477977179010696117909805695701859018966669150739407573082987363056991238107146673103957237104655136409343763639221993038484198677605284199701204669351878989982962102150055730219424526668206392140254467740757469800556697236694088468633665970603098311956910105499246381935436511205439918717236853087415401432056630404175846159692661637004967185601880460514710913037913825633119857629058574151126418040291146967097319384900092639447317903904481362864461,22214406206988221120543596573138808869312423548073528052574227838235500966558488375856182495656208729058219131190228351185002058116343873479198633895772314072671413818939926736318457089940649635331152484030046857163634723835906012553106874988855844579826872824922610248380139635284283310239564378546105159549071234915504686574306652852285495484227675227079507874801353534124836509674143920296971261218965184384289987323806590503991373066703353411925035343072343417173322682200148341574699074894310006001608609036165489022667366737175975429277190015768847957906950063130121905159960720849686267420829596753652148430921,26992054981062895613627607261766199835432715284801801749398907129229048796737348701447929605174559094984645968238323112325575430714478210726667128296579144479334211667227791506349731191531989884599385537951555136889431648507040431760656554949203843341649040209953028348323032563665739842658324687215759862340780391326904566525914822596715715051383829453805370490781186878600411802395931887164480044180689343432959074712196207660797594065685195126347713904229309636698471250350144098081500570797555478540127343168177689831999672573508345263924360426808488416307292793876390765153143370885661040432948994217496537757037,26883601429347938201866566412436359463282736845136879263977010812101340295160083165177085686402734295128738223195845941394861534416081222492334460738589328436684156816061652087254848610272225814333318089300032442695939753398569200283276971829978683842747584203047240258517693679059389343721225356421724973291878661622168915849085533925700422984364421907650824486413330797840743205222070155228532990351439410717713883609930796830287062705670943579996135308824473851899048361474382520461452309816639861239026761274994745411785747289015653392872405877863169928875880404134872170564729075194783267248873823339090853461089,26675898204441883357756938810501612911006923314113656530850642169244358619346060171584915468088311545710004060513299980257359925141562861692364285790755062927815783069742814310907363159744172010043214941961935176791603921250085454102936917126214113873120405883118273636844903335000473865105148550590214462929117780405311499444885924770449779157142014006830224170685309315154438797997384633339817640551850145502452900467824909085498261391267709054450200313476628713250795473832792093350711410373115197160491274663551092524073340836221397352664353235247831158949819050115215290772010284539607969271690219902603821582657,24003425727589170532663869192322030538943945148822062399216337010945961427378027710524236529045097740008239529891693854573603730323074574387306355517555029571396270483790272731994105657673718134894396083438028861748333502807033025075738141563799251049728691667635160338770958887288469952328987442729682278796947289053518986771911122562542149441355230810099948748099507142060010177281487688268845292432759376770532767245812643377347484905682286529844081415426101824234408564247618590677966518836555327692461478356122297916534505785216531638872958168430321684571355170353352724268927780693184938724886624339722183259421,20030939948791694094921106997836532434578994294403521371501479100010836848962747077471607238761388497679145378822499150459403963802326636975589780084279335637070321781313502047027883154267014733038805978970710176410579107929485519779112034850622531520287022547371539439386174878773544830750041302618611105173361798826270784808992652396596786821436733488377837349284332001375201088424331364286550732742247150161681889289004480841207149941594126907534285607712061943572341899739867922754683103581617612214747009636033814762750497302268078808823665919929249386647148964298452596399586628310864464196272071720395192133489,26870132374951553243581913321377246229771795848056596419360924847337540300978229013002723427615100062690126686631934134732102152941473371391783556453709425066357685692036492637888980565254013131275256724381428020710512422112788440607830591932440438849890272166273212125255293837259298348084558313308788645038416611482549103781514142985867750527012906984385110191046837459757808864741583473057341019452578423080700589131792924736182910584032669431737863108910781465411300404077532371983623221078943741087750842713540302692591604785862604978245628364756611702919842339423052849035969584933072813435912401288087398604921,25781309885353513172762417920559862373653633766198016154431702305819993747433843312735651525316421555779956949217599915608247344211910767561492880228357017663462131839160610108626231391786518524635537763772771732022138542377442385539024671393136972077400774477946909998449518641822004119697621239956294809097040644518494643152713366295240127317300380586618659118989790014789381034410565903140125870883802621234783419468923863900036725871332435066935174631607488613764393382263135690909855298574769132391272005233712859895795189174927584736869111985784832037628893972777670733794612566699959726190117505644366934694141,31307948529511772422092081620376528723351660195178245630091738647550584183808045529448767036136429258045017880313805169530174754560039519751935200016137594525166410173049351154227454247975670642857061354284229524586536451868860885813714578893448403685065908393856455188372709054731049692863370865677701391460552630927498629863324809550335559817235997586126538332699529118621351625401581293898546298753212618743290610874832103267345624474884402930254336353399762494911879332332316505133643206864735435683656288655072941785814640312959405902536938955107787448304325831133755028455554235924936888965889253927315459519249,31466961232199038206393986199348595708256863299176374148227521484010795684260339468184532260347996789772040097386032241172658309499404470468218492541809815234208995118730337303514831281668817831605535229415260143432704661750281094187807328676322407373913844432440683972812394664524853699586055958635280164067281091412249301309251915772998531080870705450343112678791059297982033179252277552572737658097615320288170699408198262523087724946180097295208523307748556241283633289461565623961341136472687878275672606572269060361808996126027608464429012339688636176786148346418213288770613540923635302757146988963110333316781,23282315206683722596094270562333648753439051790898100314922005841725502497093211800334393760989042727597691714582193235713639238284172358062468387217727181092939568556559834956352385929118617242221861532950969685568622107078283773942779583910577282365015752267710687089071780861330758005577221151609134583129504364837341221471368611555190375227501319216183854908348755278500330379812379883892909358375120467449644585220805660246421673078936109889143381498767668445860590513918867961598096050612727306953235332046855083649560662539716078578551485777683734466740521988744140757231408246451261769915726695959921765032997,25091337650425677853684475917739333556784369056148930585749057080859640921803414967035499248336819782755466354804640016025044002503128223804670636762370700960312352761126598625504662989187540799606658080278007629478214427447535566556662347722562243890754037326739900472696108231869156013516647618154210840364364919089100138905499001603568088340085110153219085814807927945152975657929969505495173887189020701090313994816079981109190512102678874334588894915787220152560380696231794377692004958328931143825599595181025003997691503128188855105160353707735893011124272774335559316106266020514461879401833904958202494061001,23827659784682250604442454473547796888740733968924087692522596947210995569582513002946432005898923676155984614087332560259943866897650716815951119740918614656692843602108809220144973266843900928325168304104193270024169252614460073574472494366384192690720704949267653372513388389564250659367518167586555169618994627094576635848093242114762843534765611200879960614166650643590955853799316870443339993391685970472310294098785089036360647811365521892090305001153074254408707786436158648387047030717269669710808288303673434511182840032065481730245714970751088620360458026112893074508503440200554493648329036195258926190733],"H1j":[10024025457847388392610646066298514243370787348338532750631360639913721829629888261433439914402718667116400994500512300775136069581637894623537510481269716297031115527602912311323880048384727148486222115704187210174101029381357780998875764924841198846224052749406474209451141960414618133437662859572202780961023516801781475926753784006105642819239485607653090319392184244933555747381471676665633830261574288841173438644814600240117247473386184548108338325639763390271130259071021112922069642676901166841167199223435257080313456925802886649375691201308332777566495693037805296244451983094124223174758130752134991251259,5540062908155010932513159905564312164946355979316528931149460136278288806659772940588319017326328094974853633874382463976169195549392127817304835111543615409573476314059060881338397061412436243810139473181382772109210271463439624149555390649740374635589527762045108740275882849527695527198385706268316952416235237543464363519203592980469637771074904708426157233888490918907104014536294284692202685017252106362206847500376336741712522098586355602155374318553270307953934712780754034315941245597336144803859821983984428471938659224631751193248483706020880124594451403191977963618445462632103562894369717754678411970157,7294264017980791887588541945948527964732046841763268733085682296431903566128312881527716171471646888128877802321111011007465120561544014131687975703500639986893207003039277321438260744935109724584373350656877837682253991859961109267518971621013884413991023503512551591742311046398421527897782104779903020623974791981836764750802585775470044046719785755322826006147242995196401054126149520747563133877218253475355114168420889541015916952420416242677374123641966631897855997275959219115766326404348502491490713975699304986526310844436386187304302850704361098476666746013218735172029033252239873173053183420490728457969,9501218113444747046512167891740890620022448184208745016727575118910400114702536042272711158066289559244823855716406559728787015762712355980741317225927051706399078523944764818407725281098361563758658548109686452917704268397282493394145905917631338144130662786869889947744035847462163212831976185178442327943506290185820473986106267053867388409405767987475830498385924106417897644176202343305711004215516685101951487059182051580662118563531777396290757514364141633090265347173402382594862836539162320425532069699769291364183133350523773491418365804493761877536170212947415911627316964969637971056063543234131063060179,15798786414829945409990379475347092437191933825852017565866427461531342919124334651290935627606571949258216191049074056902849155877229528326934734579833314251986756112086465450838437292200045064209850028597082873902388658379469441564667669701765841537160309665720024332706155566138689213961078587239980763899119769146527020365437175547591597253422987241897416697834718145603044863506510817025716990741255205962477142190641478116356939618991137525950385435749637759382858607750867147376236491183474725313362128439752969796168290272602393139910089130691220986679844969299810559606706770072567820176650336982258175656069,9335293725151276608993402038690349490322365392613976918346481216796454921531989892317554215286413208524498017721329770260220214739976276463115767516661469141467987234112799014449837377419827917305931640946522287484467505347102693011074644574833321939291182991369361351550845549986196632347752029739003400876962371840702829213086378506709453044627207644282674209652698873675164479665879605315024759424379670463637654094152277916485019222649587458037242630015801094579916767996040360006216068355347853880839844214694922100092515535187976540400673364286904799817798092386690711558542096052961324458158162316849747049802,11928753658530568234030789407795275088740952723187227006977773559909074576164921817701724786519460916583196165018163510774039491890001017299531322520325627826211812869166690445989428530376091680807701566180854522056382923625327483414081231404244458202347765643506681512770879868073522880161513490523543914681148241833246281106290736532685240004675518845019764469048182810211653160870255293592651339935498048137995182398802459841631852186888112285076188858851763824315081771524248572039785549974159773606819792419731561145595921289694471859455550756883293661073453125644271107011011223441502328961618975292599286540534,3281434421303304451534752490245528887879239197847942017450979313729063086003376295872507109217827492860554007309921835555072782997029442232019030164252143769859146809734506916627953872016140383116721175515392391691229687480990552997729334078523811275423771755788388400181281035140972235710503768780977567025805917901565574387698038208089499892809008311004708551092635216129712077377038639345772519472468677180077197280667928734700336917165150723117546746441573171713790905181182966896063824517476166929486302044010896828146903022644169171194514314475627079949830761751962833520028060036397259454122764395181619471620,26798335028033483015595995885818313899416775173626251303214746152969095667991567148306665607431284548931904800914249634868412622200397325111043206330920355980127737464934048444736064518743501106031852408038680600709174828761299003903687195970226223339349891916494477088540593890862438659139800883091968208023580402075789145180476758769233643214633776274238005081673345069570155874633220460290011162900873068065044353387042255376321331197145839355270876626896209116281706932058419419985043694684968787877580180579063249938562059688827441196772120556845945709093021801017783532024267437712559776698525435075445312453530,24379152218258906482492311550879222904032299657142525355457269472724266562417862087603238266608926068245433152992105088073531452805187189356790567435332219230651301413762858849116755355885877930185483851669316692179467165059725168458003778120562044911094551614016767541895327106348965256725682881898632251239010971342586248735804355885933092854432575702106523584026168029150861398417670162335859972289331761535391135324650197244391340985538289280848512779115086784546807731473605687728417756436783747883720385660475468617431753857425268742613699673867257484976547014884809737803594445736805689004998882232608324939099,13639308363088689304499602606006748747737150113207488794697369879342136632158898637529348398215211110838650184450613858330095458701807309615170814350482223259077017423473614957663630359321153124867291328161758174033028972972743424022771180662104664036306205285576270109455984955077713540350117086087967860191108122028954920957836754439818988959156002918996099715859267715547983808966864149367592758343569651869960032231333418638792990340363087590766121964019626938526976202582697949104351928836667810574924696014475214582129919944765647849262874087078594478919124600690586319504349329877883243753775251538124197406468,20806324398112704184576243642308446225385834167758222047710915865491553221121456559290405385050181445190026351137186843498701962906728774890279265822922302262674344261443633266351787522423584433088856438680222017039801221837510594012303704942258177163584539612102842678739854493210477613035711103258550560273478479277362352841578985334600196007452719273341052878795457240578018430753780869150598290734861026318283861569123861098217259089119729724503263571923384603566241538064572968952230647186501970761685868678332574820155746476145383468962025352911125509572618602029024652380792594855032573631797517407433780124767,2984534567830588608251691688517562019886934976940239944296177755224193834812017598586976214786265618202828155437088641819872658344085523203617440122990791586663797768559098311449463943487720199704106941788760276946864277974792415345700942642550277726023952217616537482804161899962996481893200668973584167349538844293867619144628567178172496162265433563681342772983054368775009029385174850706677287569940753312983986212778939947598815595002848721076684937312652495527309505744053588382568512842786184034878250903582357463020880854201625144449160004603244837252628379531756302498757122746553391615927560808029960266625,19681285575282653686371866964026575635551812532880664611876190222601081859688141586553347439412758942096084877111883472375168961225184324383968489352875717670106440217006572540605411871630725641391171380023993395232691314662393923848318294382993540810449491616527524662991307157899373490742858664974644838212306475173795164847929404327886006104677091872987173592834296913553225843321065615965897920646645086083927169011172363123935140462214285019059726271437492418936191962060610764641005376370506280067258828239222704103600176916708092576268163001234852617058752894380793333304339677721072271552272594404600260363861,17663259858420311330651766819499911841067663794994694318257191199872170158137865025958007148817857781638492835306514771303332749042829120815317355608633338052028835394702531720709875380635913577846095483312528431723891955957026638053673584169905737554185634030129649039016018518994356839547241764882921390944931575304729587593422442361903863687010228628846862342208853396044641495867576785861723973159597871732538239253298128840563941065388954934551651787261972744712209405583851147359110032083949020208533161960188954813739180009449972293158373021060141688387818302891372350131649013502869609299334048318236045598871,5298970575809274629438935393989318057761764519542767586120836445032263316761487525811021815951911099884013107458570792999455520743412617129043815044943875968069243444902286481323598638834526377417104328855033745156522241109248831526582827196555064828920153555458318257230359794631019067306886747836486535385255549193636393132450664433886493509087281083390290568729201571601929480774638279112348846248022706481056446460853658284203145411150560753280109970030570227674159359532427547564201906120131477615407933400264643596572008335881981150704968737407428485573362254058660832170694074403410494545950595818012264895776,15913403370317249903846545253264583237445426368566054050873204733344285093615027647693061965382356514660489490017289737470216855339451599323161686141225364898734459213317143215419647354792387760477998230133600223913390244574171627679693591136928514907378143973333998319592583595882555481681002615976566590485876365765518571760268938260544608828017208378436062792581980653043467844284389159435925884731521336805223809049222649874552372676573497110509098941429212961378401761184902390250234585999298135037647853709390803265128558710383431672409386841314821848625953345836234945114508861921890833145094378447829164485787,2290909140884019351426250008814545735225813230804981825833168241438120125584365814035371010990772186759925886882837107545743421629040643022748869446583860483172598682089887676740059939878553272595424436357723367398096377972698494175572434136161599049698027302739164581483237687791238697379241703838109655701932792883820617202754352159209515775921392841098109717647668579384288444138762640166641466203925793570935398566304261495839675905915184706531257340555764797653386663178215604213661066377035729358506114543600757612373813217341582075351741934166661911856401287953329256496263459473595206461438549716253839581620,16642615813361835581230500131246118445590603247887791817817316273244438476256311337001611675388574331977410141699297630317377151836311293305027088331310025109780248001730816502531361314291505497281231329646213545390817348454790771602982974763540004526670479533111992035177312072478629306988622806347623090425003234077873805375141062348645927401285345899503907001825760439541705306585854742931882134500925066002906885338189163552908934604616236359806104007315451823167682352183241953279551520079950202231330492255621315016646701261669501844925563045252616708085163536257987840050252877140816998011230187115088535718084,16010347999096675182232092054526583890655342476048555695134478148077646319292254202928857709848426726687922101503995183630866920756294444357812738165670087524526688577215556076807546011943089084967115014780281986236650136100212790809186133722139336439667178800133917927993914606420172087843235000579778849526996068548810587854703520128067422195406060143205277668392537421614569464766336104310955572146529110182880365088792241394086157577886083440548786679580400292545275535505024808973895871707731827445166453079771165377996477241584002682623055073167645192536278061988188027824852844065261608054572024963829903461213],"H2j":[3368171208877966911054339907901878144315427177489764716664525147952589494997571345476952466465636584372230416806643927079294770772639785886747559841089671070120102511739419185926825275343129268693107584218806327021288882477748577914215697371729166784288283440868236399459954587383445757960644874348547417850473459042890356424271874499317095341286743556259239705095932387025485711185437452734962326711790258196775033662070121656155183933539103178989257156247756946175745703344908852193344259286268186560067884170926994359970521939453852919421341990972981960061011629945378288288327928173529860414633963687461741921536,21571995110918784658914871089233085747498481392093921476006031602493786671249981878215451382962183306832489322303548281716296137774931836883062638257871799588636736223841397596603236825079859053119441636830060533162035824030490541191082185733831191460351456499274515867869223195196735738841516139421749973183291711819985317821732516820314960505801684638233368245136026792456696584282458766742520555425925807015416047178765452538113430822668214923191463369535833443605844329620997852520039896259519774630621573507729397714725431894641714478634392952187074508209560077240054333035743202911738795412331854359778973195140,14361846248841354239738429614485615020817620015740214377557182447187161532145777460980697522328331383902906916852306307688790083451608130261350491455026208295552005757157547049806867066926847972162187184750531821995727255016828133897770613409484181886065535775699953909464798003780913388918153183011660224430464726560354626850573087079518001579497098985920611294338802921392907919446517107741456227975646401634963060678572780580998274987217038988195161229432595476488751730989311796958677066257365863948226172977171594831544011639884849989931328654207271418544321580100757601201270000125579606365984683036050427736901,3320303882237934822574723730249906877625782534310160672723504685750059065549780868692191634937564489497907122877469551544554741543440051593275714064385262048169355745443620314041833050794531307335253819559894664711581948933864857312882072901440293913927021712377972600011615454373450050526995352982830050256391443830850515525775497974669346917338799122924286263331475349263163070978610950486766234107397409979634217974050928014066919223534136219934067215088896161064759214148618049130963680983012705398939807692207987093138939884157043400363128971664499276483693036909962979142844998423058170845192989653278227244556,11392712315645310673556256100365181042182208368042016535682634838624439633464280578340353342992697843456486856323709208993769929825667198124843256857854149171724638555790573818365215224736100981973384410995558183533272266822358013891089919574254939818330873527463833155579817319890250882056946018928950519405481352273564274138745239339555689528027209630484474043328702633331977168775903350557929023233359205813047128230741363083482041365845075249319178793999005856778680811779083784522911420519825713738930903604514930432327435755406403484491228343075922083298289929463367612180095879814334515830338256256962304365507,16128185768089596194287119128971616467728481679140585100708821051566471323843047828854183726318833284371487280925375797724567335316422823058316454263458054143106806709907496680547056853651764349462358556329487313360470751830659004515085115085503406434144518308588359624087795942838829972724870214686385899497790143468039433972576851570857473482249444251166188717970319339154993972583107254198134043017660882069243167380269891894037618164535745069845632928065376946760432598515015966819900477155552863106379035709861023910264232532374352692943776001019180723682584987138149276551856921296644229421379331608912433891787,2216711622729147643119351601279604576561222476671706440839914460051282496368367881534683081378746937805707571316950268212663028051018612966825594397873907399847514954700788018713085783872783310865267981225782070802491186153117333152717062661110252994273036185050571252614763467112197381544773361260703440205625252670499456016034457927577251901944688698835868136916669160283880144324751412122403729270589464975875662168775295336481672192780137765587777958466322897160031233145485380452023766308429956773283861365366429753738225270634870302712702783980696520536919562785018253963272279772947237341901826167911636277398,14567981249611770119460797088791616882610277285940857160650608249425344206528691122331543913667869847178068077135905754757970717904714688019328854767805335556395966314263235325078374161755665460346725642944725762703818596015903905714083108502634334495870792846224658572820537006327415243377500340330706127007814008821793048336577227035431648149947100606065474813247441707074217050761365292856644845629066245995828609114930249956124849463230151850823327413055370077318181578457937246716760725440912216906628033172873929155794447444347775998977195569636526530564164070920144286322379557192066768871877841501668738723305,11562467842115790891804601373773643847126621903349499609152938962148770984937205728801191644445725158989276699296504193090664088648177394705510081647868491010141118677836328015755807190340752111789458182176683494843129204876774659319228937425442946958815453444622877125277511242659189800732695804577042735408856749044867603169231506434230337165888447884043777386886336176295745762185799165141571995448994795987563473269027183930075484844146542824749783851152327060411300732221330038342605240436682988238960554043191119742665518743299119772957848539797927531910599793668616983919654530567233469044356313491217598173963,14001988942247671750781482079375285966547579414294794319094213847379686940578167330959958747320137628734714588973465688779508774703004652572462868416321674738451567199004872420641775754108356291951642382728451341563463073268234897512437292991864411475522021623042299363078178084134670414407763213420631947305174457007699331702204294303015464925310244650403343929391594959891748515738314022772251420423895070351394216428634037166244804545860754313566530581379130190514697248618490807663014153146208137639940027271688234812971813570187637013722635079779830294526604514749212529717398437104564243590356265592707324430248,22660381208680529934440965587759859630365737502029115748369924654698991903261875827625444059798716389150600717053198039271991446052177985348107490095372700835812383361394955848974961135498980301472468398590372824927166661721168913896457190085269560320077063240744390945543298734163933076390800852847268723891846915780866370885782050245477056357544654583119258014409021504561016925378839878361190561580782875056594285065583655990468688145199834395357403106937935824760810934700883413929457207664342072543405193505090717688282434192414638239406093224709925453132516053056802277292184257441746331824932943075086343111278,20472030140330590554727016751322746521411547021589348812503605132754052870300345339453032427074737788538570891246727822818774891000538284023878268779231690147875265496447517546051987993131805558030308294615301233476549529141133753715149811029684466002817709334036803452074715441881335148948617848448549417354051160238759910288354822541817903899839091496273435021826344319441409806973908079330351993159801831003550379943098083992503486981995525990398355622285332802868604496636639655839747683821735810491234886789689703654299736502370849656509374303361111199544583501333765966424789805698080099714702838932727164170265,2453173651401016059883376082702788558595819343620938909718003743834761063920578770151771007440124157356829685449240956671627119096461094862434828440771694576875873539491082895345114445338009283914246401641276451109273726841868022516636570181871922631150553766823691471767095455577358060583652290109547591748476465162423200240371828509110384977101559949176482932811774533277255627251591525680337416653414697852938946477765739575989782561041133771451257557157756072849234217247160968445068150218106127891386897699168070200218755068578136094949985380806928006246790329032200529105916916706533850553672076045608730359951,24113152339438360498818613385483602121911555739122745946787379178133957345957135620586264478203421944425299426192146461629084303328006516447630615633641891356240907180660156167532682435848933370915136668244592305335752238307655218128679169067763462102575980085156721937439825798887974559139719995948680828470417607776837167245694714142889348485597791698351034577938495332154328968099025912022930753095015877561713107591709857548795164690012791766454787725487399290632750389338230767552797412606609844617222343058516288469384643892784348204522341997782682670665258025662990169755315957866286658684293611644496873215267,23048127989879822710411192866890144848102725506107457207672066933390327615164057701868652098516421397166175276204189099923035751642625511125320886106285613893278788342927698548384268560900735111168363954600824026890037073968715675372129633119593307084369015870114545021114363768521678984746381386414166722200844864695581741219036038918650136132423598216731404838838590398569938445014697553573715959930243891120229359688175340044395042982004999256741864583061848148945179825358319553305735497035945950407010348447423433336328707080153581767979294379351950056937128181379551873194994067035954630194182060875682649437666,13618893464695086149676203128264379703835247962620883770951238013108147463339903484787069986025297587613907750851693587285998342458273645890621629308654871877706080796956646324471034007240766614380367007821000885398439611969420081154359024999574164769946112634981576459912811818772491470799900760145047753530968995478407930477477944129573287306569838212654312701822189291272987922653156057983889008935259264244527455188704827518079129994488508788103513618119832400499449348458232904888661877972105894911067928574676593878643851258312142433749927142945806711403413926146774157545099025460329680057003565864119710344042,23894029291617241391144328899509691451082120805949912944383938437120322549284785238294999166576087704069349411280857670919349460489513399500828536265895125463653495907166485758411354581066514943080277665731467417672021474933030712874768858153808012182457456133833868682464778542510979705494991241834256525297885337509013426009068419788422403698033836643374538850826433098217327104341285009528115639746062522009884356634868057714134080806096522631119686584895158882950387390079669636785522392222833493980203199840117132536258676406629318977553433626720193118379634005263005358473104730141003648560474105109737111011794,8925336938516965008397109104514048184046286665452569746388287155124102463448431342748346308295582163969585477123381674515410213967775651281608577967919981280923720344420733336038269189964575637162708585549385406099462739524026684819607311522399446887121322482655436562521377082292558533779186792041587188361186852658931953312216304602575717772394803653647861926317392730789837892117863267885605817028617970756887793540591824273228108598874261690153175536884068161483807477696239392976829822163308261960542651335245650622440817598987961098884462409657203750437907285145610244236094931259734945402603438305753971150592,11949666259971918796589430623190075546810486453882961593114781232790528357171489136086300172564872735213582648459678932324553671446193373613445392996846768949427585353892225809922873734606473958012848905522095066153323414491640379067553063059327565094898320425802881846169782611727703042073646692303198048486923691657532734229486488161759607766287874080676488615866925028524263799527274261471472615111756048644281578781133899646868101860588922113737985515123939591333283772116702698675273675787772365936701715064375893211337204849804346824788133348904362412793959284749560448461044309070434592388006426231060171764771,22250566339370324059402215781976249391077086920660167269541657986285216346026428267640441435642495757683689137264020871118649281135403445710476580606390835296225377720486579495200200373576733192798872047011357659910138900430140520045889539388154712432007987497852789128001047310532391671755193946030519165629053752937739899959567496721448943588557458516035029605073085115080892712303741049416122614132971525567297514147438256957998569093867126816514230762539072531021367441808139154778858187018499802649090111006001230394761758788797026721593274233504527845651968558769656875733771044784061166465882679811351871629592],"BigXj":[{"Coords":[107932666477475802631511202367582748861519739569035537904969017494701526323818,27810089900979531039053592509940878404833992140356119628629019981009106058899]},{"Coords":[70488850009775279003934303461546816167586319901288720095232797816893086714940,21365158033407193885213404713050228625397820553043856269267720323259910113340]},{"Coords":[96704419145309517259142970140495022508494287400107594467439362232020961329299,76628584944766298203991062873793502752240767184659143342509677627090500089962]},{"Coords":[28019161860991754547254544009397503028608838172584402384170752184470432984674,108882834276696603625351040619123218095898824500661874818668494090573839581587]},{"Coords":[69854419615803608419512220164651266075688659942948825382651503385261699188382,86209865999364219341605400066204025416938700532196803014526015416182305901566]},{"Coords":[55707469940275855599640808250448173151230633312005616373715718152006593734016,71581471827456608524472614862044126332419275513283203837579704443605501341979]},{"Coords":[31537542564214197931115404850756486671358385103785295421162883744455005249506,31003647934233069190792056145926504346119044635106496026002117518163562078840]},{"Coords":[71459743938853567115182393388387842195822211722537627655935266215390092032802,105621264392663357649957909617094860377111556629887291515711877643951632476111]},{"Coords":[100170179262204638729042299933877814060918019584852761639094198183345507736585,28900877763089774489040863107152228045173480683157331262486804734772631569442]},{"Coords":[3393930126761759176345687233491451168543634500428196687848693751772795262696,55773871461934232294712308387072487465508923595028614508001564000526922809830]},{"Coords":[35436174997161384450863357581481493940397620545951968086180770941965008242533,22941476771782647278770334144010957938195504420883358055133977993491797250976]},{"Coords":[20742591764203230819083960194719627433799141307841650214987882235851644570480,36792680781195360005281832466704518433303594582044389944698351592636972852101]},{"Coords":[78822613167932563650341174247543824338627391764838115664582901884987316485415,29305611808246076472515388603014476455888609363718621630903671994111327870746]},{"Coords":[106662917025753316359017201639970683777210765763056751174154469380644107823988,38376047705320523688829546978146661452201839032747402442602961204420046730181]},{"Coords":[50131378328647772110850225682895027165473791107252577081428683178756073747030,6484525664721285218064077598136507537588284647694850022336064622644441747313]},{"Coords":[63814576207919556970263190432671978386229401573575575774195362165468317841987,52351921007743438678847732376277019290979039258214198300788054101141627584484]},{"Coords":[33074537919982031116943260590723731125144796968052633499149040111855190089892,52462876494517613825042650703891412581466209764861573326649361336309483684004]},{"Coords":[46337244846970653814521818706394664913446423803670640514811670889644615970917,60622380590936530234720907025041106487069869976400399621024354043945489694205]},{"Coords":[68932201886808999446322681662607675293176822755681592496851252047161893154617,102558540543641758967834783938704783088913683989892796677072783324191846467831]},{"Coords":[47093684301174743530406169926797075725911173707597448168332637736184121729220,74517549523358620639964596401882412428175945976473031695393603496712918162101]}],"PaillierPKs":[{"N":22709559588116531632086995360614881758145847958604375585917706994116168375700793376291131544827864145364687259129107134734036373558516565338923959924703156876435469021413354399418993619174071015237246272863140297401272631661028437511282301913323857011886496541494453371682094558243513835287198378640755589750985308457641295136946180231598093936765306071278862423297167033582450972276390473663053961764398615170355333807856718875047329620163477731845253445115727590642190491372191245975524943279344261890117425706855830582201691939059698357650223528988243289388677629074389631868130733940366531485671699566601163615661},{"N":23443957150234287781524191819714980056334495753799141564738532515877512840928595615570444488815473106829833471979932833846134743028112638013245259429585839683894162551870479232892081727695293106142145837752188330564435054323350976552725925455074206192778580457152750035194725712966851385101176362564718763658489874740341398176203077931510475924742361380746164713522692182335455005818339528332609035897638651762193188267900136476551393608916669622907100712471489443414455950510417300576764177277906265582678299980344888299166427651633758323734973558749488731824311505669417847053850760848940423643750519510719400853833},{"N":22287028689259504755807149120904050002396020193634043129060485604472139332057712093383073269246020913354970143960065213561811698182428208504100112877284663913440710058603853492628849020664094889598583038642474751945815658301741607940280803922553940685657785019086609257141579057485855668397778602262577280637009340765489166395694519909332104264865369924039797553524566502151933416185073911748303993059047774791584591703105106437459703251723998725467328206119091524784524659754164199098692948259716816125731645175450298738430174307931086107554346505367596601043514472572775722114263120820933996056766066990263737006037},{"N":21778455942403717802437188616130445569467912356333711523204106321468333958250985526522676150458521139952234508699903096368286173136552336834061186195705878795885628080532376972447127537374960052755412900354192740274699607194495256559382391407619506149746521336051948176770581697936379025338953179299724284866217851767053361169462746892201032000776732741861429352495405542992367041691709412944529198233031428083828538853890568987466209820731450551650370292813109604532198408719181905952928419308306626664706489746484860069309396704199131581338218405332252354539932883923534658047809067343949198229794022084007329008301},{"N":29488834801717020514549557511738862835006604218586783270956635930974777840977382736818004943434492491272083417763033198615963445455042431681833978353867438176815774128330303688651059852719975859250721567522453513175104614385098138081209372251486732213899964978141377939387124226524201851559541320231331748973500724292675746395999336271645347092285737228923411234511145980962423027637945866866145915490526131803713409632083226573065035861386075817821231913413262072294132940186959486615122177174171466978866072639941945123654758187894442697758141328636666389957637295324259708835849664958476600091423260629670847006421},{"N":25268781854018641821625117526035412649921406362359871346957405856614663043063881662682001256500050697385215601589085313282671061645985003913281457834036290368462929918763869754871955608135979298238482437377851913552755913815405018774915484866488142406303297444296659799278477225336231564636195441498040062964451813900346208766721654100661710718867197194733579941984196715209521167970358227552984230489600141394198144474928084583860744656840175887777161454380202188440178263993042579519816969496156562013371732648143667185817225623397113488180419930136011024805515953457443050643425221010148081098971618629282508806153},{"N":24077030535873838147372990238338423111894661719881851208383511932936303788667059523325649062922462968249640702042151293306587810036594125879862518141403476609262478705296844024060273562609291573351215091787555942245982552314643486135981274381916357213038852978171063476276539384812002232533351978097782562939609101707149234139391638125337919614533689982228496010017193463462456934753130533077727108799001253943486336718218272844533405886783727956436625979626270665501149887064412642510585330023269746464208739229956710668053204092869919317416558618819105166451453240320574158658174090376334547079951345889147202424197},{"N":24121210025310295136286367465067731861316363403302816495348899075683542883649267862423504534408270521528934904000166037695519824119622953526124849500602533136680339478221010232315859804261374907195769559713293619918530079931895046819311703445607618111244570268187554380693098539122537784889700313005700764528116670706472264450599583329582635827622249925780628859318211609939169828662135675938640346560681426019582628979275573701346775265344080547061237809761964885298244705276139799178175782218409921284339726928435810584460742981474010807766522632224843035722465220411812727073796692626221078545796203402892726398073},{"N":26956782591324520026471701264974010002551430844929064558517606333109244333104364565707985261498791802440691867651722784210280888161145432103606824079477489895607158911928686613189674072708812330140444741131333062722881890279580684791181148664415766399323289281546841599984936640417820094077391333063403828290767644884268872176714175866593843027335088472731880830448148161449695591865312724115778446298294191846018327598860718546463796845910458753293225328770367785304521228332493000905274903063796918859478998380272311510096333363160486944174426731511854410356169028732110892177884127982236790065871058497952170624401},{"N":26249557760815986852034237905417683014048371748204856284575862917968310785883486514046189771449794410062311941320778404041317694258818896788913080156960590072834802977027251267292982532721343074208805165986815554608059680417209847673748867108719737464989377176319950884300513507127044766841349776517208994115342645229445634306184178062065483947743824551463650982111893910449653832587022792656303977671598375329018430362166017195461057586254287305421091325058340750141735758488815547176349755224428765382123772435956499576803085012124378000542928725389368171404677133866847871236251441021957443853014282022367009685861},{"N":29234737641692976595774236923019314216135921756073342884203680618120226690739166288052322806435356115092650761656136403373733697692050475566331202817414926309882834844059857181882811689758047525443057988160495074334079542319370840285641441603178202467820462588826229922786870937847036888109767951604636584098102615282750014508387427358079100450062680715472456836097388046216848854107984658532128468648705497171277133763535425127577293318939184956565230142817502839346792604559307183239212332206857888330805061669830296766718735240517983609617995793272006065303892130080909658027060291496416496673503247698087863812741},{"N":23656386949781378983561509210223997485938600678969404520355733863050336777307520388106184053630795530040934267843013912848246799628076757878172461266778291537251825140340096706161543161977283845709058224884977213986434571463756330276479208682952096086332163009127424608568458165322976353036562065434426650045708578336603634894217912009997772105108262453019882143577371634194078714264992380438885990335741008955488808069468796086801023973076920357953123958081822096146124559004458043648352764252390085772923647155984579633692639191141425745475545839873632550694666801559519849238477058285069280151324843991596401646381},{"N":23799985430892428550287426639163393896421663100337917557737015159273107046495772196531619480943457572757018895004491581880198797117841320493538657520011738472038586707181276745476787089472101888983238214242261897466709975139313526918983914349699164310009561585851364405464439780111046692215844366708075439030620693316351016954915727063684631173044817825576871464988585229583331260702104268887569088888141481975510438061934915565917441018736997897082388887244599485050548831301667982348795441755679549415459512278548728977097478254566801983960996625453970296380670902503277224729081061542066926552900097298958795919921},{"N":23398981485141581657111580810187356464859260220476400872431878471724619284703169207796437272649895475435460945312990810473873577007856956495840504596329080928974891464665270653430872926713471055976901497303072174459471872022720981442223753911960555794844008812776454183058593769792366230853507105586338576934054995838272457499054915439455088496111012971850904735289245691042597216634196809202787360353382667100073960437339209464655220130141692780283364216457426778903461083049390591667885095066567970867147659207581183606534554025283663685502553767113396678790806758816850832944906936477595076662914396730813902861273},{"N":24645804484208008107774215519843481629641338685651268289287772114412526440944111199969614165736177320304962312701073205538949325003439610780511806547845684862319242490345551374064725883323450769869814834613757570218276860284970150303912936880248283750218053176729988470901025014948637258535944241625099061769802348376561541469733700398108049774899180411488580995483844861534070436865153589414051441506488195269353530135159150725450897767102214976100194473384482425657735122085724544900424323758582364844065404991831422328546732900258700279735848044809564185617079126240413557300335393565946088211107690073344594774029},{"N":23664465666512928010084076006211208070039097235865486451752383277009646489200010451773766854885315852604650109050180997494686499532996982524560956955784208153283884502900612829692080614937231941501430129101050170848135543483642879522140453631883679490750446245717832265221232589489474380464199065201167874127465810334527670252907568617820949350516778153996202871756067806159248004814563340677682071536108582393686279672503548392243690499337315202892692273695083478754736347613219568092769421161385508903701795824994052294039246344316342377047969959511601521901736714883097032290625287691937066549723767146291790114657},{"N":22165609813091667259068375406991183583538522584875908765309739098448534648989953434651686788146626220283972510122914357995219529654582068510398362007031593307847827533082059785375352080923687640731375327188268078188971415753864060723639564145551626769223269559344648109409611860616931934210627553354435590764505138165455042290624193631088250055962033560484870481238850988856340320616852463026890656813658017413542014132396994215496811530247375977104307808133564653689276479112825279061966541271092780066027501498091088819663615972345385914896991989394778860649710938578818683661928070093400675043514978345177529652389},{"N":24352137164919775060505902875895344669551891343219870713119659495462675754712808458066602996522267529841963340495194383402601416044030073771848283771276922546693343786778909195920195728052430645791682092298169597213540403251589258864324656830830912032021695409682689693414793104678019843226941004344886835923010707685858497420014814885662783481710790760565625597934856999445792014460533464855807508832344902590088930105318969772303090927340774137226985715726042801943592444113021856673268564036683304420372700405680896320106848396385562893886698977710031223312091933030330629827691164100994176634674536649129152931477},{"N":24388425323514301995345880181969195093222141730097776998750148283180811486102209130079655780738706237274584643472954914248041737365215477795339570700387683883122567928523036945799350046333477704674538444513982433086664207664876244841911099162128315338715496189423824903190803189243082722638413039421880070666657272413079871744422617706188003161639646693501252928939859937588136677607569634910081471599993513483449765647227570734163189729311880395414909879933139619835138785852476313690881562300854512419432999005203281002911021482679309149225773391703345476483158302622073477221903694296256566718995262186459619480089},{"N":21604728584405813409256303272593334134333518895675489098410576803850613670962405878762275711641486977471395420657043551402890823783906820971712770494973201278527635005537714974340519544361402189093858595896231890523544098157276831993549216761475195055251372273062282101577640320665049775934814411518181030603401788639796770568692007642464803606076672769360069701571162199680486773757848273630254180550410784187377722267755203781450486589090106764541644204842436002216866597611146281471192249537747681020939314396157603364418120170135828923470079746789793341042476885118587449440114091973976013051496269141578521399429}],"ECDSAPub":{"Coords":[82191134404558877049244897640959846424169542769967270904890689024123037541855,102677683688073592669768840687667774566029618427936181452214529135934890152533]}} \ No newline at end of file diff --git a/test/_fixtures/keygen_data_1.json b/test/_fixtures/keygen_data_1.json deleted file mode 100644 index ff218f37..00000000 --- a/test/_fixtures/keygen_data_1.json +++ /dev/null @@ -1 +0,0 @@ -{"PaillierSK":{"N":23443957150234287781524191819714980056334495753799141564738532515877512840928595615570444488815473106829833471979932833846134743028112638013245259429585839683894162551870479232892081727695293106142145837752188330564435054323350976552725925455074206192778580457152750035194725712966851385101176362564718763658489874740341398176203077931510475924742361380746164713522692182335455005818339528332609035897638651762193188267900136476551393608916669622907100712471489443414455950510417300576764177277906265582678299980344888299166427651633758323734973558749488731824311505669417847053850760848940423643750519510719400853833,"LambdaN":11721978575117143890762095909857490028167247876899570782369266257938756420464297807785222244407736553414916735989966416923067371514056319006622629714792919841947081275935239616446040863847646553071072918876094165282217527161675488276362962727537103096389290228576375017597362856483425692550588181282359381829091632215994693278254337857059805187990731465025342516711853260473822808112168070738906977414143139295123370350185096294034862377660750947198806373198573982272436317815346961253374514827617372329101303691805201122722093213026182402848341683701837962704808482185100398260884408616512948041205435425581250157514,"PhiN":23443957150234287781524191819714980056334495753799141564738532515877512840928595615570444488815473106829833471979932833846134743028112638013245259429585839683894162551870479232892081727695293106142145837752188330564435054323350976552725925455074206192778580457152750035194725712966851385101176362564718763658183264431989386556508675714119610375981462930050685033423706520947645616224336141477813954828286278590246740700370192588069724755321501894397612746397147964544872635630693922506749029655234744658202607383610402245444186426052364805696683367403675925409616964370200796521768817233025896082410870851162500315028},"NTildei":24760645214372673899925400730945520473062951341429554908754617530444794660401836428698520741646966955149111758288194803110363170964340801072472223878272430220722034553855593944561986134993071918255771235073978495918874383067260043443905506152815841034811512510858407909698555608803009379935760654878372301870950275270724586431009354962811874333750886958869738872804882633350285507993032763679234057221556156642769183354423672540429587887851343483914923600996425040023829456198369968692844034517720322057627565080062766276792221145223750390964637842847390939964073972850018793739320669513533403812272268817559996728177,"H1i":5540062908155010932513159905564312164946355979316528931149460136278288806659772940588319017326328094974853633874382463976169195549392127817304835111543615409573476314059060881338397061412436243810139473181382772109210271463439624149555390649740374635589527762045108740275882849527695527198385706268316952416235237543464363519203592980469637771074904708426157233888490918907104014536294284692202685017252106362206847500376336741712522098586355602155374318553270307953934712780754034315941245597336144803859821983984428471938659224631751193248483706020880124594451403191977963618445462632103562894369717754678411970157,"H2i":21571995110918784658914871089233085747498481392093921476006031602493786671249981878215451382962183306832489322303548281716296137774931836883062638257871799588636736223841397596603236825079859053119441636830060533162035824030490541191082185733831191460351456499274515867869223195196735738841516139421749973183291711819985317821732516820314960505801684638233368245136026792456696584282458766742520555425925807015416047178765452538113430822668214923191463369535833443605844329620997852520039896259519774630621573507729397714725431894641714478634392952187074508209560077240054333035743202911738795412331854359778973195140,"Alpha":17594725768627078078653505641813077352301974156684172244214081996816028533670219042019287354127776209306305190565467338600142902758972656570891904493630893343101817750117882744127509098654884768341482794477238350755648044099774929760035004435887728154788716710702715096992678159396908321351057188231999180606111265769986040155750243236359820366528228943910541433984737063518666401439142002426413954051183266125100116793913686675948214710993058720467519459550076782507355879818043237935523969838613280228447046040573403628148533838878707513151648853777749971065830945115824713929160796597863678733159229112749711381569,"Beta":2967400076302424861119635520572959832242394318737390568717960419814578475568370488936102941983091300538944739567679836018101477740265117502741798667732001759597375424284781524450429724733141811096668416458462278848522706596164780790481822757089510712392213496186533388293391205454341637587548677880199748730017712213613923249119796898383095165264852695034607808991026423572778475964778852862531458384142033590386707253647869036380539349246288957463286980667822016017283641957756402569775362971503366416733287396406098026409434327888220126015847683768342710835664315799693098719285505516954962392854859547929586026294,"P":73773765636818661414878415349262603891084737225008350840122846371900724710001985790434608760837127001711188602678872923364363324704984873387313442599735522184937339063586530569447813619399949184079574914809596353320486235645038917303940353106391198006760903860526544907247138129002269650663072356241110339329,"Q":83907351755185614389840321802626699282982848748319664753708918519299187829223529581303018937299468754792498965798597628352870240097744973078459550131703780545930613533466560038160638152017394239016050670393305429106391754644166902927523262991785366371053325237074123133873636239385246384246725606502949667901,"Xi":80100232836278668907086453652243537816578097210088257785296324145244916247930,"ShareID":70024534756929667616115849317753032895580033020239899587896153938577578972750,"Ks":[70024534756929667616115849317753032895580033020239899587896153938577578972749,70024534756929667616115849317753032895580033020239899587896153938577578972750,70024534756929667616115849317753032895580033020239899587896153938577578972751,70024534756929667616115849317753032895580033020239899587896153938577578972752,70024534756929667616115849317753032895580033020239899587896153938577578972753,70024534756929667616115849317753032895580033020239899587896153938577578972754,70024534756929667616115849317753032895580033020239899587896153938577578972755,70024534756929667616115849317753032895580033020239899587896153938577578972756,70024534756929667616115849317753032895580033020239899587896153938577578972757,70024534756929667616115849317753032895580033020239899587896153938577578972758,70024534756929667616115849317753032895580033020239899587896153938577578972759,70024534756929667616115849317753032895580033020239899587896153938577578972760,70024534756929667616115849317753032895580033020239899587896153938577578972761,70024534756929667616115849317753032895580033020239899587896153938577578972762,70024534756929667616115849317753032895580033020239899587896153938577578972763,70024534756929667616115849317753032895580033020239899587896153938577578972764,70024534756929667616115849317753032895580033020239899587896153938577578972765,70024534756929667616115849317753032895580033020239899587896153938577578972766,70024534756929667616115849317753032895580033020239899587896153938577578972767,70024534756929667616115849317753032895580033020239899587896153938577578972768],"NTildej":[24366917239515824974480442558600034492208859976504581465004349103795399783288421050831073024860369440303795551299953821996018530997630686285237603133194573622718124597460737572013930327249120648302190449742363261573076443183981343509885970573178298207488759436277685910850783372123719807298277837194569211839837465137044422691734879346883675317045008891659749391963717253895556693016508386391015178130161988317310806894350108084212611277788190739249760699147435109968242744158314817905689533615803297627887736048945645075792686416602832677541152918424023805280241226851534199867283487943291927564365275467582581271053,24760645214372673899925400730945520473062951341429554908754617530444794660401836428698520741646966955149111758288194803110363170964340801072472223878272430220722034553855593944561986134993071918255771235073978495918874383067260043443905506152815841034811512510858407909698555608803009379935760654878372301870950275270724586431009354962811874333750886958869738872804882633350285507993032763679234057221556156642769183354423672540429587887851343483914923600996425040023829456198369968692844034517720322057627565080062766276792221145223750390964637842847390939964073972850018793739320669513533403812272268817559996728177,24335507174653830446370401218472354012341984065893977351232759664219171991998539382418393419142907217562914494098827810315198583692551476438232634594991137003295122745831430159532586451010818106345725278793436836406022036374386618877645773128457664942790386603953998246404350465143928182109615440037926218085391564421745517307996722808502413850991173460229650178023548969664557299385141472097112836353938598657235574893430259143862369227601052831476146199261368117297723539373329843815951236997008000605506966102265798289158763516254914284024816124992986001907541315389832578466014006010753144367487203071067653140017,25353120959776139123294155818546513426444543204238814947681743626639583989194265533184090862296087842527526282860965927846515276605818147773016966742984780344247645856238734726222917730082852005118152200740071409410429096265046046476115230269737050878141459099734884888260830179970728221214610731604157017545322535971152193773221758709395769765431078738204491094323008301356895841037132747444047830530409305765562694358003007195242702308043142399969256485870876259711230128209178441443167004632638027691911658424285106297785382963002590496015895572427776988235599297735903480964253948429971597628412447354914215359401,29849885402332341621158797110436829396646924395042456662853244309209629024048299162272105169817115314715561658954210859089958590864101117136365470947498907594068557026997249170993874294161892140147876022164668279854630146959174794473879294364568105935870579392660025720467645329300426773479121856766502569984218591054914763859996476236063750210092775547343099066989888106146219058807079888624162205626100491953381078296178689026680702514982189001052448223393538379392778307314168895065497502603308074595916000270844935723623383768691838356870704054233137068509668072099435779943491520206735659166266930856700483211181,24303346306264095483727907643814355785838936488512300414348142784703917728792656928355740144163123550572150171398192480623395181408570425672723511597546032812698562984141032629389936754449924613948711482870260420456913877526422469201798411517711928654451945040790337077196569240216228957228264615761147375423719114756511538399142649755527243797217920772594702713281103939163745422429156605226253637010451757984598979666631182977221341184990723224510127460146263007980086670575857365789365543477249518437176817144448210584125518855115672157465775432933601089465408090382773104140011964681476656187299047937685144419517,22663176204438991528847068755997123453980704364589354833944958947785385672266299429364336994892902925142195136026995771544990684289261678272550855925683439714148609523477977179010696117909805695701859018966669150739407573082987363056991238107146673103957237104655136409343763639221993038484198677605284199701204669351878989982962102150055730219424526668206392140254467740757469800556697236694088468633665970603098311956910105499246381935436511205439918717236853087415401432056630404175846159692661637004967185601880460514710913037913825633119857629058574151126418040291146967097319384900092639447317903904481362864461,22214406206988221120543596573138808869312423548073528052574227838235500966558488375856182495656208729058219131190228351185002058116343873479198633895772314072671413818939926736318457089940649635331152484030046857163634723835906012553106874988855844579826872824922610248380139635284283310239564378546105159549071234915504686574306652852285495484227675227079507874801353534124836509674143920296971261218965184384289987323806590503991373066703353411925035343072343417173322682200148341574699074894310006001608609036165489022667366737175975429277190015768847957906950063130121905159960720849686267420829596753652148430921,26992054981062895613627607261766199835432715284801801749398907129229048796737348701447929605174559094984645968238323112325575430714478210726667128296579144479334211667227791506349731191531989884599385537951555136889431648507040431760656554949203843341649040209953028348323032563665739842658324687215759862340780391326904566525914822596715715051383829453805370490781186878600411802395931887164480044180689343432959074712196207660797594065685195126347713904229309636698471250350144098081500570797555478540127343168177689831999672573508345263924360426808488416307292793876390765153143370885661040432948994217496537757037,26883601429347938201866566412436359463282736845136879263977010812101340295160083165177085686402734295128738223195845941394861534416081222492334460738589328436684156816061652087254848610272225814333318089300032442695939753398569200283276971829978683842747584203047240258517693679059389343721225356421724973291878661622168915849085533925700422984364421907650824486413330797840743205222070155228532990351439410717713883609930796830287062705670943579996135308824473851899048361474382520461452309816639861239026761274994745411785747289015653392872405877863169928875880404134872170564729075194783267248873823339090853461089,26675898204441883357756938810501612911006923314113656530850642169244358619346060171584915468088311545710004060513299980257359925141562861692364285790755062927815783069742814310907363159744172010043214941961935176791603921250085454102936917126214113873120405883118273636844903335000473865105148550590214462929117780405311499444885924770449779157142014006830224170685309315154438797997384633339817640551850145502452900467824909085498261391267709054450200313476628713250795473832792093350711410373115197160491274663551092524073340836221397352664353235247831158949819050115215290772010284539607969271690219902603821582657,24003425727589170532663869192322030538943945148822062399216337010945961427378027710524236529045097740008239529891693854573603730323074574387306355517555029571396270483790272731994105657673718134894396083438028861748333502807033025075738141563799251049728691667635160338770958887288469952328987442729682278796947289053518986771911122562542149441355230810099948748099507142060010177281487688268845292432759376770532767245812643377347484905682286529844081415426101824234408564247618590677966518836555327692461478356122297916534505785216531638872958168430321684571355170353352724268927780693184938724886624339722183259421,20030939948791694094921106997836532434578994294403521371501479100010836848962747077471607238761388497679145378822499150459403963802326636975589780084279335637070321781313502047027883154267014733038805978970710176410579107929485519779112034850622531520287022547371539439386174878773544830750041302618611105173361798826270784808992652396596786821436733488377837349284332001375201088424331364286550732742247150161681889289004480841207149941594126907534285607712061943572341899739867922754683103581617612214747009636033814762750497302268078808823665919929249386647148964298452596399586628310864464196272071720395192133489,26870132374951553243581913321377246229771795848056596419360924847337540300978229013002723427615100062690126686631934134732102152941473371391783556453709425066357685692036492637888980565254013131275256724381428020710512422112788440607830591932440438849890272166273212125255293837259298348084558313308788645038416611482549103781514142985867750527012906984385110191046837459757808864741583473057341019452578423080700589131792924736182910584032669431737863108910781465411300404077532371983623221078943741087750842713540302692591604785862604978245628364756611702919842339423052849035969584933072813435912401288087398604921,25781309885353513172762417920559862373653633766198016154431702305819993747433843312735651525316421555779956949217599915608247344211910767561492880228357017663462131839160610108626231391786518524635537763772771732022138542377442385539024671393136972077400774477946909998449518641822004119697621239956294809097040644518494643152713366295240127317300380586618659118989790014789381034410565903140125870883802621234783419468923863900036725871332435066935174631607488613764393382263135690909855298574769132391272005233712859895795189174927584736869111985784832037628893972777670733794612566699959726190117505644366934694141,31307948529511772422092081620376528723351660195178245630091738647550584183808045529448767036136429258045017880313805169530174754560039519751935200016137594525166410173049351154227454247975670642857061354284229524586536451868860885813714578893448403685065908393856455188372709054731049692863370865677701391460552630927498629863324809550335559817235997586126538332699529118621351625401581293898546298753212618743290610874832103267345624474884402930254336353399762494911879332332316505133643206864735435683656288655072941785814640312959405902536938955107787448304325831133755028455554235924936888965889253927315459519249,31466961232199038206393986199348595708256863299176374148227521484010795684260339468184532260347996789772040097386032241172658309499404470468218492541809815234208995118730337303514831281668817831605535229415260143432704661750281094187807328676322407373913844432440683972812394664524853699586055958635280164067281091412249301309251915772998531080870705450343112678791059297982033179252277552572737658097615320288170699408198262523087724946180097295208523307748556241283633289461565623961341136472687878275672606572269060361808996126027608464429012339688636176786148346418213288770613540923635302757146988963110333316781,23282315206683722596094270562333648753439051790898100314922005841725502497093211800334393760989042727597691714582193235713639238284172358062468387217727181092939568556559834956352385929118617242221861532950969685568622107078283773942779583910577282365015752267710687089071780861330758005577221151609134583129504364837341221471368611555190375227501319216183854908348755278500330379812379883892909358375120467449644585220805660246421673078936109889143381498767668445860590513918867961598096050612727306953235332046855083649560662539716078578551485777683734466740521988744140757231408246451261769915726695959921765032997,25091337650425677853684475917739333556784369056148930585749057080859640921803414967035499248336819782755466354804640016025044002503128223804670636762370700960312352761126598625504662989187540799606658080278007629478214427447535566556662347722562243890754037326739900472696108231869156013516647618154210840364364919089100138905499001603568088340085110153219085814807927945152975657929969505495173887189020701090313994816079981109190512102678874334588894915787220152560380696231794377692004958328931143825599595181025003997691503128188855105160353707735893011124272774335559316106266020514461879401833904958202494061001,23827659784682250604442454473547796888740733968924087692522596947210995569582513002946432005898923676155984614087332560259943866897650716815951119740918614656692843602108809220144973266843900928325168304104193270024169252614460073574472494366384192690720704949267653372513388389564250659367518167586555169618994627094576635848093242114762843534765611200879960614166650643590955853799316870443339993391685970472310294098785089036360647811365521892090305001153074254408707786436158648387047030717269669710808288303673434511182840032065481730245714970751088620360458026112893074508503440200554493648329036195258926190733],"H1j":[10024025457847388392610646066298514243370787348338532750631360639913721829629888261433439914402718667116400994500512300775136069581637894623537510481269716297031115527602912311323880048384727148486222115704187210174101029381357780998875764924841198846224052749406474209451141960414618133437662859572202780961023516801781475926753784006105642819239485607653090319392184244933555747381471676665633830261574288841173438644814600240117247473386184548108338325639763390271130259071021112922069642676901166841167199223435257080313456925802886649375691201308332777566495693037805296244451983094124223174758130752134991251259,5540062908155010932513159905564312164946355979316528931149460136278288806659772940588319017326328094974853633874382463976169195549392127817304835111543615409573476314059060881338397061412436243810139473181382772109210271463439624149555390649740374635589527762045108740275882849527695527198385706268316952416235237543464363519203592980469637771074904708426157233888490918907104014536294284692202685017252106362206847500376336741712522098586355602155374318553270307953934712780754034315941245597336144803859821983984428471938659224631751193248483706020880124594451403191977963618445462632103562894369717754678411970157,7294264017980791887588541945948527964732046841763268733085682296431903566128312881527716171471646888128877802321111011007465120561544014131687975703500639986893207003039277321438260744935109724584373350656877837682253991859961109267518971621013884413991023503512551591742311046398421527897782104779903020623974791981836764750802585775470044046719785755322826006147242995196401054126149520747563133877218253475355114168420889541015916952420416242677374123641966631897855997275959219115766326404348502491490713975699304986526310844436386187304302850704361098476666746013218735172029033252239873173053183420490728457969,9501218113444747046512167891740890620022448184208745016727575118910400114702536042272711158066289559244823855716406559728787015762712355980741317225927051706399078523944764818407725281098361563758658548109686452917704268397282493394145905917631338144130662786869889947744035847462163212831976185178442327943506290185820473986106267053867388409405767987475830498385924106417897644176202343305711004215516685101951487059182051580662118563531777396290757514364141633090265347173402382594862836539162320425532069699769291364183133350523773491418365804493761877536170212947415911627316964969637971056063543234131063060179,15798786414829945409990379475347092437191933825852017565866427461531342919124334651290935627606571949258216191049074056902849155877229528326934734579833314251986756112086465450838437292200045064209850028597082873902388658379469441564667669701765841537160309665720024332706155566138689213961078587239980763899119769146527020365437175547591597253422987241897416697834718145603044863506510817025716990741255205962477142190641478116356939618991137525950385435749637759382858607750867147376236491183474725313362128439752969796168290272602393139910089130691220986679844969299810559606706770072567820176650336982258175656069,9335293725151276608993402038690349490322365392613976918346481216796454921531989892317554215286413208524498017721329770260220214739976276463115767516661469141467987234112799014449837377419827917305931640946522287484467505347102693011074644574833321939291182991369361351550845549986196632347752029739003400876962371840702829213086378506709453044627207644282674209652698873675164479665879605315024759424379670463637654094152277916485019222649587458037242630015801094579916767996040360006216068355347853880839844214694922100092515535187976540400673364286904799817798092386690711558542096052961324458158162316849747049802,11928753658530568234030789407795275088740952723187227006977773559909074576164921817701724786519460916583196165018163510774039491890001017299531322520325627826211812869166690445989428530376091680807701566180854522056382923625327483414081231404244458202347765643506681512770879868073522880161513490523543914681148241833246281106290736532685240004675518845019764469048182810211653160870255293592651339935498048137995182398802459841631852186888112285076188858851763824315081771524248572039785549974159773606819792419731561145595921289694471859455550756883293661073453125644271107011011223441502328961618975292599286540534,3281434421303304451534752490245528887879239197847942017450979313729063086003376295872507109217827492860554007309921835555072782997029442232019030164252143769859146809734506916627953872016140383116721175515392391691229687480990552997729334078523811275423771755788388400181281035140972235710503768780977567025805917901565574387698038208089499892809008311004708551092635216129712077377038639345772519472468677180077197280667928734700336917165150723117546746441573171713790905181182966896063824517476166929486302044010896828146903022644169171194514314475627079949830761751962833520028060036397259454122764395181619471620,26798335028033483015595995885818313899416775173626251303214746152969095667991567148306665607431284548931904800914249634868412622200397325111043206330920355980127737464934048444736064518743501106031852408038680600709174828761299003903687195970226223339349891916494477088540593890862438659139800883091968208023580402075789145180476758769233643214633776274238005081673345069570155874633220460290011162900873068065044353387042255376321331197145839355270876626896209116281706932058419419985043694684968787877580180579063249938562059688827441196772120556845945709093021801017783532024267437712559776698525435075445312453530,24379152218258906482492311550879222904032299657142525355457269472724266562417862087603238266608926068245433152992105088073531452805187189356790567435332219230651301413762858849116755355885877930185483851669316692179467165059725168458003778120562044911094551614016767541895327106348965256725682881898632251239010971342586248735804355885933092854432575702106523584026168029150861398417670162335859972289331761535391135324650197244391340985538289280848512779115086784546807731473605687728417756436783747883720385660475468617431753857425268742613699673867257484976547014884809737803594445736805689004998882232608324939099,13639308363088689304499602606006748747737150113207488794697369879342136632158898637529348398215211110838650184450613858330095458701807309615170814350482223259077017423473614957663630359321153124867291328161758174033028972972743424022771180662104664036306205285576270109455984955077713540350117086087967860191108122028954920957836754439818988959156002918996099715859267715547983808966864149367592758343569651869960032231333418638792990340363087590766121964019626938526976202582697949104351928836667810574924696014475214582129919944765647849262874087078594478919124600690586319504349329877883243753775251538124197406468,20806324398112704184576243642308446225385834167758222047710915865491553221121456559290405385050181445190026351137186843498701962906728774890279265822922302262674344261443633266351787522423584433088856438680222017039801221837510594012303704942258177163584539612102842678739854493210477613035711103258550560273478479277362352841578985334600196007452719273341052878795457240578018430753780869150598290734861026318283861569123861098217259089119729724503263571923384603566241538064572968952230647186501970761685868678332574820155746476145383468962025352911125509572618602029024652380792594855032573631797517407433780124767,2984534567830588608251691688517562019886934976940239944296177755224193834812017598586976214786265618202828155437088641819872658344085523203617440122990791586663797768559098311449463943487720199704106941788760276946864277974792415345700942642550277726023952217616537482804161899962996481893200668973584167349538844293867619144628567178172496162265433563681342772983054368775009029385174850706677287569940753312983986212778939947598815595002848721076684937312652495527309505744053588382568512842786184034878250903582357463020880854201625144449160004603244837252628379531756302498757122746553391615927560808029960266625,19681285575282653686371866964026575635551812532880664611876190222601081859688141586553347439412758942096084877111883472375168961225184324383968489352875717670106440217006572540605411871630725641391171380023993395232691314662393923848318294382993540810449491616527524662991307157899373490742858664974644838212306475173795164847929404327886006104677091872987173592834296913553225843321065615965897920646645086083927169011172363123935140462214285019059726271437492418936191962060610764641005376370506280067258828239222704103600176916708092576268163001234852617058752894380793333304339677721072271552272594404600260363861,17663259858420311330651766819499911841067663794994694318257191199872170158137865025958007148817857781638492835306514771303332749042829120815317355608633338052028835394702531720709875380635913577846095483312528431723891955957026638053673584169905737554185634030129649039016018518994356839547241764882921390944931575304729587593422442361903863687010228628846862342208853396044641495867576785861723973159597871732538239253298128840563941065388954934551651787261972744712209405583851147359110032083949020208533161960188954813739180009449972293158373021060141688387818302891372350131649013502869609299334048318236045598871,5298970575809274629438935393989318057761764519542767586120836445032263316761487525811021815951911099884013107458570792999455520743412617129043815044943875968069243444902286481323598638834526377417104328855033745156522241109248831526582827196555064828920153555458318257230359794631019067306886747836486535385255549193636393132450664433886493509087281083390290568729201571601929480774638279112348846248022706481056446460853658284203145411150560753280109970030570227674159359532427547564201906120131477615407933400264643596572008335881981150704968737407428485573362254058660832170694074403410494545950595818012264895776,15913403370317249903846545253264583237445426368566054050873204733344285093615027647693061965382356514660489490017289737470216855339451599323161686141225364898734459213317143215419647354792387760477998230133600223913390244574171627679693591136928514907378143973333998319592583595882555481681002615976566590485876365765518571760268938260544608828017208378436062792581980653043467844284389159435925884731521336805223809049222649874552372676573497110509098941429212961378401761184902390250234585999298135037647853709390803265128558710383431672409386841314821848625953345836234945114508861921890833145094378447829164485787,2290909140884019351426250008814545735225813230804981825833168241438120125584365814035371010990772186759925886882837107545743421629040643022748869446583860483172598682089887676740059939878553272595424436357723367398096377972698494175572434136161599049698027302739164581483237687791238697379241703838109655701932792883820617202754352159209515775921392841098109717647668579384288444138762640166641466203925793570935398566304261495839675905915184706531257340555764797653386663178215604213661066377035729358506114543600757612373813217341582075351741934166661911856401287953329256496263459473595206461438549716253839581620,16642615813361835581230500131246118445590603247887791817817316273244438476256311337001611675388574331977410141699297630317377151836311293305027088331310025109780248001730816502531361314291505497281231329646213545390817348454790771602982974763540004526670479533111992035177312072478629306988622806347623090425003234077873805375141062348645927401285345899503907001825760439541705306585854742931882134500925066002906885338189163552908934604616236359806104007315451823167682352183241953279551520079950202231330492255621315016646701261669501844925563045252616708085163536257987840050252877140816998011230187115088535718084,16010347999096675182232092054526583890655342476048555695134478148077646319292254202928857709848426726687922101503995183630866920756294444357812738165670087524526688577215556076807546011943089084967115014780281986236650136100212790809186133722139336439667178800133917927993914606420172087843235000579778849526996068548810587854703520128067422195406060143205277668392537421614569464766336104310955572146529110182880365088792241394086157577886083440548786679580400292545275535505024808973895871707731827445166453079771165377996477241584002682623055073167645192536278061988188027824852844065261608054572024963829903461213],"H2j":[3368171208877966911054339907901878144315427177489764716664525147952589494997571345476952466465636584372230416806643927079294770772639785886747559841089671070120102511739419185926825275343129268693107584218806327021288882477748577914215697371729166784288283440868236399459954587383445757960644874348547417850473459042890356424271874499317095341286743556259239705095932387025485711185437452734962326711790258196775033662070121656155183933539103178989257156247756946175745703344908852193344259286268186560067884170926994359970521939453852919421341990972981960061011629945378288288327928173529860414633963687461741921536,21571995110918784658914871089233085747498481392093921476006031602493786671249981878215451382962183306832489322303548281716296137774931836883062638257871799588636736223841397596603236825079859053119441636830060533162035824030490541191082185733831191460351456499274515867869223195196735738841516139421749973183291711819985317821732516820314960505801684638233368245136026792456696584282458766742520555425925807015416047178765452538113430822668214923191463369535833443605844329620997852520039896259519774630621573507729397714725431894641714478634392952187074508209560077240054333035743202911738795412331854359778973195140,14361846248841354239738429614485615020817620015740214377557182447187161532145777460980697522328331383902906916852306307688790083451608130261350491455026208295552005757157547049806867066926847972162187184750531821995727255016828133897770613409484181886065535775699953909464798003780913388918153183011660224430464726560354626850573087079518001579497098985920611294338802921392907919446517107741456227975646401634963060678572780580998274987217038988195161229432595476488751730989311796958677066257365863948226172977171594831544011639884849989931328654207271418544321580100757601201270000125579606365984683036050427736901,3320303882237934822574723730249906877625782534310160672723504685750059065549780868692191634937564489497907122877469551544554741543440051593275714064385262048169355745443620314041833050794531307335253819559894664711581948933864857312882072901440293913927021712377972600011615454373450050526995352982830050256391443830850515525775497974669346917338799122924286263331475349263163070978610950486766234107397409979634217974050928014066919223534136219934067215088896161064759214148618049130963680983012705398939807692207987093138939884157043400363128971664499276483693036909962979142844998423058170845192989653278227244556,11392712315645310673556256100365181042182208368042016535682634838624439633464280578340353342992697843456486856323709208993769929825667198124843256857854149171724638555790573818365215224736100981973384410995558183533272266822358013891089919574254939818330873527463833155579817319890250882056946018928950519405481352273564274138745239339555689528027209630484474043328702633331977168775903350557929023233359205813047128230741363083482041365845075249319178793999005856778680811779083784522911420519825713738930903604514930432327435755406403484491228343075922083298289929463367612180095879814334515830338256256962304365507,16128185768089596194287119128971616467728481679140585100708821051566471323843047828854183726318833284371487280925375797724567335316422823058316454263458054143106806709907496680547056853651764349462358556329487313360470751830659004515085115085503406434144518308588359624087795942838829972724870214686385899497790143468039433972576851570857473482249444251166188717970319339154993972583107254198134043017660882069243167380269891894037618164535745069845632928065376946760432598515015966819900477155552863106379035709861023910264232532374352692943776001019180723682584987138149276551856921296644229421379331608912433891787,2216711622729147643119351601279604576561222476671706440839914460051282496368367881534683081378746937805707571316950268212663028051018612966825594397873907399847514954700788018713085783872783310865267981225782070802491186153117333152717062661110252994273036185050571252614763467112197381544773361260703440205625252670499456016034457927577251901944688698835868136916669160283880144324751412122403729270589464975875662168775295336481672192780137765587777958466322897160031233145485380452023766308429956773283861365366429753738225270634870302712702783980696520536919562785018253963272279772947237341901826167911636277398,14567981249611770119460797088791616882610277285940857160650608249425344206528691122331543913667869847178068077135905754757970717904714688019328854767805335556395966314263235325078374161755665460346725642944725762703818596015903905714083108502634334495870792846224658572820537006327415243377500340330706127007814008821793048336577227035431648149947100606065474813247441707074217050761365292856644845629066245995828609114930249956124849463230151850823327413055370077318181578457937246716760725440912216906628033172873929155794447444347775998977195569636526530564164070920144286322379557192066768871877841501668738723305,11562467842115790891804601373773643847126621903349499609152938962148770984937205728801191644445725158989276699296504193090664088648177394705510081647868491010141118677836328015755807190340752111789458182176683494843129204876774659319228937425442946958815453444622877125277511242659189800732695804577042735408856749044867603169231506434230337165888447884043777386886336176295745762185799165141571995448994795987563473269027183930075484844146542824749783851152327060411300732221330038342605240436682988238960554043191119742665518743299119772957848539797927531910599793668616983919654530567233469044356313491217598173963,14001988942247671750781482079375285966547579414294794319094213847379686940578167330959958747320137628734714588973465688779508774703004652572462868416321674738451567199004872420641775754108356291951642382728451341563463073268234897512437292991864411475522021623042299363078178084134670414407763213420631947305174457007699331702204294303015464925310244650403343929391594959891748515738314022772251420423895070351394216428634037166244804545860754313566530581379130190514697248618490807663014153146208137639940027271688234812971813570187637013722635079779830294526604514749212529717398437104564243590356265592707324430248,22660381208680529934440965587759859630365737502029115748369924654698991903261875827625444059798716389150600717053198039271991446052177985348107490095372700835812383361394955848974961135498980301472468398590372824927166661721168913896457190085269560320077063240744390945543298734163933076390800852847268723891846915780866370885782050245477056357544654583119258014409021504561016925378839878361190561580782875056594285065583655990468688145199834395357403106937935824760810934700883413929457207664342072543405193505090717688282434192414638239406093224709925453132516053056802277292184257441746331824932943075086343111278,20472030140330590554727016751322746521411547021589348812503605132754052870300345339453032427074737788538570891246727822818774891000538284023878268779231690147875265496447517546051987993131805558030308294615301233476549529141133753715149811029684466002817709334036803452074715441881335148948617848448549417354051160238759910288354822541817903899839091496273435021826344319441409806973908079330351993159801831003550379943098083992503486981995525990398355622285332802868604496636639655839747683821735810491234886789689703654299736502370849656509374303361111199544583501333765966424789805698080099714702838932727164170265,2453173651401016059883376082702788558595819343620938909718003743834761063920578770151771007440124157356829685449240956671627119096461094862434828440771694576875873539491082895345114445338009283914246401641276451109273726841868022516636570181871922631150553766823691471767095455577358060583652290109547591748476465162423200240371828509110384977101559949176482932811774533277255627251591525680337416653414697852938946477765739575989782561041133771451257557157756072849234217247160968445068150218106127891386897699168070200218755068578136094949985380806928006246790329032200529105916916706533850553672076045608730359951,24113152339438360498818613385483602121911555739122745946787379178133957345957135620586264478203421944425299426192146461629084303328006516447630615633641891356240907180660156167532682435848933370915136668244592305335752238307655218128679169067763462102575980085156721937439825798887974559139719995948680828470417607776837167245694714142889348485597791698351034577938495332154328968099025912022930753095015877561713107591709857548795164690012791766454787725487399290632750389338230767552797412606609844617222343058516288469384643892784348204522341997782682670665258025662990169755315957866286658684293611644496873215267,23048127989879822710411192866890144848102725506107457207672066933390327615164057701868652098516421397166175276204189099923035751642625511125320886106285613893278788342927698548384268560900735111168363954600824026890037073968715675372129633119593307084369015870114545021114363768521678984746381386414166722200844864695581741219036038918650136132423598216731404838838590398569938445014697553573715959930243891120229359688175340044395042982004999256741864583061848148945179825358319553305735497035945950407010348447423433336328707080153581767979294379351950056937128181379551873194994067035954630194182060875682649437666,13618893464695086149676203128264379703835247962620883770951238013108147463339903484787069986025297587613907750851693587285998342458273645890621629308654871877706080796956646324471034007240766614380367007821000885398439611969420081154359024999574164769946112634981576459912811818772491470799900760145047753530968995478407930477477944129573287306569838212654312701822189291272987922653156057983889008935259264244527455188704827518079129994488508788103513618119832400499449348458232904888661877972105894911067928574676593878643851258312142433749927142945806711403413926146774157545099025460329680057003565864119710344042,23894029291617241391144328899509691451082120805949912944383938437120322549284785238294999166576087704069349411280857670919349460489513399500828536265895125463653495907166485758411354581066514943080277665731467417672021474933030712874768858153808012182457456133833868682464778542510979705494991241834256525297885337509013426009068419788422403698033836643374538850826433098217327104341285009528115639746062522009884356634868057714134080806096522631119686584895158882950387390079669636785522392222833493980203199840117132536258676406629318977553433626720193118379634005263005358473104730141003648560474105109737111011794,8925336938516965008397109104514048184046286665452569746388287155124102463448431342748346308295582163969585477123381674515410213967775651281608577967919981280923720344420733336038269189964575637162708585549385406099462739524026684819607311522399446887121322482655436562521377082292558533779186792041587188361186852658931953312216304602575717772394803653647861926317392730789837892117863267885605817028617970756887793540591824273228108598874261690153175536884068161483807477696239392976829822163308261960542651335245650622440817598987961098884462409657203750437907285145610244236094931259734945402603438305753971150592,11949666259971918796589430623190075546810486453882961593114781232790528357171489136086300172564872735213582648459678932324553671446193373613445392996846768949427585353892225809922873734606473958012848905522095066153323414491640379067553063059327565094898320425802881846169782611727703042073646692303198048486923691657532734229486488161759607766287874080676488615866925028524263799527274261471472615111756048644281578781133899646868101860588922113737985515123939591333283772116702698675273675787772365936701715064375893211337204849804346824788133348904362412793959284749560448461044309070434592388006426231060171764771,22250566339370324059402215781976249391077086920660167269541657986285216346026428267640441435642495757683689137264020871118649281135403445710476580606390835296225377720486579495200200373576733192798872047011357659910138900430140520045889539388154712432007987497852789128001047310532391671755193946030519165629053752937739899959567496721448943588557458516035029605073085115080892712303741049416122614132971525567297514147438256957998569093867126816514230762539072531021367441808139154778858187018499802649090111006001230394761758788797026721593274233504527845651968558769656875733771044784061166465882679811351871629592],"BigXj":[{"Coords":[107932666477475802631511202367582748861519739569035537904969017494701526323818,27810089900979531039053592509940878404833992140356119628629019981009106058899]},{"Coords":[70488850009775279003934303461546816167586319901288720095232797816893086714940,21365158033407193885213404713050228625397820553043856269267720323259910113340]},{"Coords":[96704419145309517259142970140495022508494287400107594467439362232020961329299,76628584944766298203991062873793502752240767184659143342509677627090500089962]},{"Coords":[28019161860991754547254544009397503028608838172584402384170752184470432984674,108882834276696603625351040619123218095898824500661874818668494090573839581587]},{"Coords":[69854419615803608419512220164651266075688659942948825382651503385261699188382,86209865999364219341605400066204025416938700532196803014526015416182305901566]},{"Coords":[55707469940275855599640808250448173151230633312005616373715718152006593734016,71581471827456608524472614862044126332419275513283203837579704443605501341979]},{"Coords":[31537542564214197931115404850756486671358385103785295421162883744455005249506,31003647934233069190792056145926504346119044635106496026002117518163562078840]},{"Coords":[71459743938853567115182393388387842195822211722537627655935266215390092032802,105621264392663357649957909617094860377111556629887291515711877643951632476111]},{"Coords":[100170179262204638729042299933877814060918019584852761639094198183345507736585,28900877763089774489040863107152228045173480683157331262486804734772631569442]},{"Coords":[3393930126761759176345687233491451168543634500428196687848693751772795262696,55773871461934232294712308387072487465508923595028614508001564000526922809830]},{"Coords":[35436174997161384450863357581481493940397620545951968086180770941965008242533,22941476771782647278770334144010957938195504420883358055133977993491797250976]},{"Coords":[20742591764203230819083960194719627433799141307841650214987882235851644570480,36792680781195360005281832466704518433303594582044389944698351592636972852101]},{"Coords":[78822613167932563650341174247543824338627391764838115664582901884987316485415,29305611808246076472515388603014476455888609363718621630903671994111327870746]},{"Coords":[106662917025753316359017201639970683777210765763056751174154469380644107823988,38376047705320523688829546978146661452201839032747402442602961204420046730181]},{"Coords":[50131378328647772110850225682895027165473791107252577081428683178756073747030,6484525664721285218064077598136507537588284647694850022336064622644441747313]},{"Coords":[63814576207919556970263190432671978386229401573575575774195362165468317841987,52351921007743438678847732376277019290979039258214198300788054101141627584484]},{"Coords":[33074537919982031116943260590723731125144796968052633499149040111855190089892,52462876494517613825042650703891412581466209764861573326649361336309483684004]},{"Coords":[46337244846970653814521818706394664913446423803670640514811670889644615970917,60622380590936530234720907025041106487069869976400399621024354043945489694205]},{"Coords":[68932201886808999446322681662607675293176822755681592496851252047161893154617,102558540543641758967834783938704783088913683989892796677072783324191846467831]},{"Coords":[47093684301174743530406169926797075725911173707597448168332637736184121729220,74517549523358620639964596401882412428175945976473031695393603496712918162101]}],"PaillierPKs":[{"N":22709559588116531632086995360614881758145847958604375585917706994116168375700793376291131544827864145364687259129107134734036373558516565338923959924703156876435469021413354399418993619174071015237246272863140297401272631661028437511282301913323857011886496541494453371682094558243513835287198378640755589750985308457641295136946180231598093936765306071278862423297167033582450972276390473663053961764398615170355333807856718875047329620163477731845253445115727590642190491372191245975524943279344261890117425706855830582201691939059698357650223528988243289388677629074389631868130733940366531485671699566601163615661},{"N":23443957150234287781524191819714980056334495753799141564738532515877512840928595615570444488815473106829833471979932833846134743028112638013245259429585839683894162551870479232892081727695293106142145837752188330564435054323350976552725925455074206192778580457152750035194725712966851385101176362564718763658489874740341398176203077931510475924742361380746164713522692182335455005818339528332609035897638651762193188267900136476551393608916669622907100712471489443414455950510417300576764177277906265582678299980344888299166427651633758323734973558749488731824311505669417847053850760848940423643750519510719400853833},{"N":22287028689259504755807149120904050002396020193634043129060485604472139332057712093383073269246020913354970143960065213561811698182428208504100112877284663913440710058603853492628849020664094889598583038642474751945815658301741607940280803922553940685657785019086609257141579057485855668397778602262577280637009340765489166395694519909332104264865369924039797553524566502151933416185073911748303993059047774791584591703105106437459703251723998725467328206119091524784524659754164199098692948259716816125731645175450298738430174307931086107554346505367596601043514472572775722114263120820933996056766066990263737006037},{"N":21778455942403717802437188616130445569467912356333711523204106321468333958250985526522676150458521139952234508699903096368286173136552336834061186195705878795885628080532376972447127537374960052755412900354192740274699607194495256559382391407619506149746521336051948176770581697936379025338953179299724284866217851767053361169462746892201032000776732741861429352495405542992367041691709412944529198233031428083828538853890568987466209820731450551650370292813109604532198408719181905952928419308306626664706489746484860069309396704199131581338218405332252354539932883923534658047809067343949198229794022084007329008301},{"N":29488834801717020514549557511738862835006604218586783270956635930974777840977382736818004943434492491272083417763033198615963445455042431681833978353867438176815774128330303688651059852719975859250721567522453513175104614385098138081209372251486732213899964978141377939387124226524201851559541320231331748973500724292675746395999336271645347092285737228923411234511145980962423027637945866866145915490526131803713409632083226573065035861386075817821231913413262072294132940186959486615122177174171466978866072639941945123654758187894442697758141328636666389957637295324259708835849664958476600091423260629670847006421},{"N":25268781854018641821625117526035412649921406362359871346957405856614663043063881662682001256500050697385215601589085313282671061645985003913281457834036290368462929918763869754871955608135979298238482437377851913552755913815405018774915484866488142406303297444296659799278477225336231564636195441498040062964451813900346208766721654100661710718867197194733579941984196715209521167970358227552984230489600141394198144474928084583860744656840175887777161454380202188440178263993042579519816969496156562013371732648143667185817225623397113488180419930136011024805515953457443050643425221010148081098971618629282508806153},{"N":24077030535873838147372990238338423111894661719881851208383511932936303788667059523325649062922462968249640702042151293306587810036594125879862518141403476609262478705296844024060273562609291573351215091787555942245982552314643486135981274381916357213038852978171063476276539384812002232533351978097782562939609101707149234139391638125337919614533689982228496010017193463462456934753130533077727108799001253943486336718218272844533405886783727956436625979626270665501149887064412642510585330023269746464208739229956710668053204092869919317416558618819105166451453240320574158658174090376334547079951345889147202424197},{"N":24121210025310295136286367465067731861316363403302816495348899075683542883649267862423504534408270521528934904000166037695519824119622953526124849500602533136680339478221010232315859804261374907195769559713293619918530079931895046819311703445607618111244570268187554380693098539122537784889700313005700764528116670706472264450599583329582635827622249925780628859318211609939169828662135675938640346560681426019582628979275573701346775265344080547061237809761964885298244705276139799178175782218409921284339726928435810584460742981474010807766522632224843035722465220411812727073796692626221078545796203402892726398073},{"N":26956782591324520026471701264974010002551430844929064558517606333109244333104364565707985261498791802440691867651722784210280888161145432103606824079477489895607158911928686613189674072708812330140444741131333062722881890279580684791181148664415766399323289281546841599984936640417820094077391333063403828290767644884268872176714175866593843027335088472731880830448148161449695591865312724115778446298294191846018327598860718546463796845910458753293225328770367785304521228332493000905274903063796918859478998380272311510096333363160486944174426731511854410356169028732110892177884127982236790065871058497952170624401},{"N":26249557760815986852034237905417683014048371748204856284575862917968310785883486514046189771449794410062311941320778404041317694258818896788913080156960590072834802977027251267292982532721343074208805165986815554608059680417209847673748867108719737464989377176319950884300513507127044766841349776517208994115342645229445634306184178062065483947743824551463650982111893910449653832587022792656303977671598375329018430362166017195461057586254287305421091325058340750141735758488815547176349755224428765382123772435956499576803085012124378000542928725389368171404677133866847871236251441021957443853014282022367009685861},{"N":29234737641692976595774236923019314216135921756073342884203680618120226690739166288052322806435356115092650761656136403373733697692050475566331202817414926309882834844059857181882811689758047525443057988160495074334079542319370840285641441603178202467820462588826229922786870937847036888109767951604636584098102615282750014508387427358079100450062680715472456836097388046216848854107984658532128468648705497171277133763535425127577293318939184956565230142817502839346792604559307183239212332206857888330805061669830296766718735240517983609617995793272006065303892130080909658027060291496416496673503247698087863812741},{"N":23656386949781378983561509210223997485938600678969404520355733863050336777307520388106184053630795530040934267843013912848246799628076757878172461266778291537251825140340096706161543161977283845709058224884977213986434571463756330276479208682952096086332163009127424608568458165322976353036562065434426650045708578336603634894217912009997772105108262453019882143577371634194078714264992380438885990335741008955488808069468796086801023973076920357953123958081822096146124559004458043648352764252390085772923647155984579633692639191141425745475545839873632550694666801559519849238477058285069280151324843991596401646381},{"N":23799985430892428550287426639163393896421663100337917557737015159273107046495772196531619480943457572757018895004491581880198797117841320493538657520011738472038586707181276745476787089472101888983238214242261897466709975139313526918983914349699164310009561585851364405464439780111046692215844366708075439030620693316351016954915727063684631173044817825576871464988585229583331260702104268887569088888141481975510438061934915565917441018736997897082388887244599485050548831301667982348795441755679549415459512278548728977097478254566801983960996625453970296380670902503277224729081061542066926552900097298958795919921},{"N":23398981485141581657111580810187356464859260220476400872431878471724619284703169207796437272649895475435460945312990810473873577007856956495840504596329080928974891464665270653430872926713471055976901497303072174459471872022720981442223753911960555794844008812776454183058593769792366230853507105586338576934054995838272457499054915439455088496111012971850904735289245691042597216634196809202787360353382667100073960437339209464655220130141692780283364216457426778903461083049390591667885095066567970867147659207581183606534554025283663685502553767113396678790806758816850832944906936477595076662914396730813902861273},{"N":24645804484208008107774215519843481629641338685651268289287772114412526440944111199969614165736177320304962312701073205538949325003439610780511806547845684862319242490345551374064725883323450769869814834613757570218276860284970150303912936880248283750218053176729988470901025014948637258535944241625099061769802348376561541469733700398108049774899180411488580995483844861534070436865153589414051441506488195269353530135159150725450897767102214976100194473384482425657735122085724544900424323758582364844065404991831422328546732900258700279735848044809564185617079126240413557300335393565946088211107690073344594774029},{"N":23664465666512928010084076006211208070039097235865486451752383277009646489200010451773766854885315852604650109050180997494686499532996982524560956955784208153283884502900612829692080614937231941501430129101050170848135543483642879522140453631883679490750446245717832265221232589489474380464199065201167874127465810334527670252907568617820949350516778153996202871756067806159248004814563340677682071536108582393686279672503548392243690499337315202892692273695083478754736347613219568092769421161385508903701795824994052294039246344316342377047969959511601521901736714883097032290625287691937066549723767146291790114657},{"N":22165609813091667259068375406991183583538522584875908765309739098448534648989953434651686788146626220283972510122914357995219529654582068510398362007031593307847827533082059785375352080923687640731375327188268078188971415753864060723639564145551626769223269559344648109409611860616931934210627553354435590764505138165455042290624193631088250055962033560484870481238850988856340320616852463026890656813658017413542014132396994215496811530247375977104307808133564653689276479112825279061966541271092780066027501498091088819663615972345385914896991989394778860649710938578818683661928070093400675043514978345177529652389},{"N":24352137164919775060505902875895344669551891343219870713119659495462675754712808458066602996522267529841963340495194383402601416044030073771848283771276922546693343786778909195920195728052430645791682092298169597213540403251589258864324656830830912032021695409682689693414793104678019843226941004344886835923010707685858497420014814885662783481710790760565625597934856999445792014460533464855807508832344902590088930105318969772303090927340774137226985715726042801943592444113021856673268564036683304420372700405680896320106848396385562893886698977710031223312091933030330629827691164100994176634674536649129152931477},{"N":24388425323514301995345880181969195093222141730097776998750148283180811486102209130079655780738706237274584643472954914248041737365215477795339570700387683883122567928523036945799350046333477704674538444513982433086664207664876244841911099162128315338715496189423824903190803189243082722638413039421880070666657272413079871744422617706188003161639646693501252928939859937588136677607569634910081471599993513483449765647227570734163189729311880395414909879933139619835138785852476313690881562300854512419432999005203281002911021482679309149225773391703345476483158302622073477221903694296256566718995262186459619480089},{"N":21604728584405813409256303272593334134333518895675489098410576803850613670962405878762275711641486977471395420657043551402890823783906820971712770494973201278527635005537714974340519544361402189093858595896231890523544098157276831993549216761475195055251372273062282101577640320665049775934814411518181030603401788639796770568692007642464803606076672769360069701571162199680486773757848273630254180550410784187377722267755203781450486589090106764541644204842436002216866597611146281471192249537747681020939314396157603364418120170135828923470079746789793341042476885118587449440114091973976013051496269141578521399429}],"ECDSAPub":{"Coords":[82191134404558877049244897640959846424169542769967270904890689024123037541855,102677683688073592669768840687667774566029618427936181452214529135934890152533]}} \ No newline at end of file diff --git a/test/_fixtures/keygen_data_10.json b/test/_fixtures/keygen_data_10.json deleted file mode 100644 index 91d0f9ed..00000000 --- a/test/_fixtures/keygen_data_10.json +++ /dev/null @@ -1 +0,0 @@ -{"PaillierSK":{"N":29234737641692976595774236923019314216135921756073342884203680618120226690739166288052322806435356115092650761656136403373733697692050475566331202817414926309882834844059857181882811689758047525443057988160495074334079542319370840285641441603178202467820462588826229922786870937847036888109767951604636584098102615282750014508387427358079100450062680715472456836097388046216848854107984658532128468648705497171277133763535425127577293318939184956565230142817502839346792604559307183239212332206857888330805061669830296766718735240517983609617995793272006065303892130080909658027060291496416496673503247698087863812741,"LambdaN":14617368820846488297887118461509657108067960878036671442101840309060113345369583144026161403217678057546325380828068201686866848846025237783165601408707463154941417422029928590941405844879023762721528994080247537167039771159685420142820720801589101233910231294413114961393435468923518444054883975802318292048880179615815715326095293903979614208200232483370140069301868193806894125756095540379730629104561435373727914221446808921671076333896940562278806959762925944196981499919382933821047947165421265418003218284640344817722937013607132853158504503525449659047171857883758119119002910712475914015672690583079793957526,"PhiN":29234737641692976595774236923019314216135921756073342884203680618120226690739166288052322806435356115092650761656136403373733697692050475566331202817414926309882834844059857181882811689758047525443057988160495074334079542319370840285641441603178202467820462588826229922786870937847036888109767951604636584097760359231631430652190587807959228416400464966740280138603736387613788251512191080759461258209122870747455828442893617843342152667793881124557613919525851888393962999838765867642095894330842530836006436569280689635445874027214265706317009007050899318094343715767516238238005821424951828031345381166159587915052},"NTildei":26675898204441883357756938810501612911006923314113656530850642169244358619346060171584915468088311545710004060513299980257359925141562861692364285790755062927815783069742814310907363159744172010043214941961935176791603921250085454102936917126214113873120405883118273636844903335000473865105148550590214462929117780405311499444885924770449779157142014006830224170685309315154438797997384633339817640551850145502452900467824909085498261391267709054450200313476628713250795473832792093350711410373115197160491274663551092524073340836221397352664353235247831158949819050115215290772010284539607969271690219902603821582657,"H1i":13639308363088689304499602606006748747737150113207488794697369879342136632158898637529348398215211110838650184450613858330095458701807309615170814350482223259077017423473614957663630359321153124867291328161758174033028972972743424022771180662104664036306205285576270109455984955077713540350117086087967860191108122028954920957836754439818988959156002918996099715859267715547983808966864149367592758343569651869960032231333418638792990340363087590766121964019626938526976202582697949104351928836667810574924696014475214582129919944765647849262874087078594478919124600690586319504349329877883243753775251538124197406468,"H2i":22660381208680529934440965587759859630365737502029115748369924654698991903261875827625444059798716389150600717053198039271991446052177985348107490095372700835812383361394955848974961135498980301472468398590372824927166661721168913896457190085269560320077063240744390945543298734163933076390800852847268723891846915780866370885782050245477056357544654583119258014409021504561016925378839878361190561580782875056594285065583655990468688145199834395357403106937935824760810934700883413929457207664342072543405193505090717688282434192414638239406093224709925453132516053056802277292184257441746331824932943075086343111278,"Alpha":23782854590880442579293274899669590206677893053827323491715220573687166126219282326077964291458960695722001188262382685407702290579112921795728346793766220615051724401015074215955921760170502651301585800420877041468581891390746118807300068538568543667632600517119351211080474436577947049562660378820285010256898556773878558013957586751412841357356178707508697827948973851682223750861888134502103500813042231126590695217260615112149128287595511960874666183750562220272532804992881790187802082312909181713175236903463739283392371761525182919330098859139422538467149792181190675659499693616740664419642661694623736047660,"Beta":723349182463828529185921246564006270068230353537930147498220658388135366135158038002759958644124101321541748992363866089034912875385521866456605874546541038525853789629889965776328714518115388319014546708314311205964235751145381687177464457666260684421882402540316068914227870843223890468651387710736075967066011876310343559969219846344072552813876465349908068245779413657094163589511453829456510894609604586935413811234730964756988495129744400652343417462648181411539190695944926281148967996508985686101966932920673529923404824289835268259809364285093177620016067031261903263652997758237184532723173285608216448600,"P":81430160489606824704890276353533595611519767209640928084240705289442638262503585279606869410829243230299988511840150759908879557894773662777724601300770167584534089970003172206969212410138772999482257530275567181564649453936709053707021376800612072075342744114043216262883349443040471317831013044768136147091,"Q":81898089246203217753814513418828126435661350561805350981790071668779385561188084195324598175622098112278118844201979829946369164764804916912401524324222864931049728659599962455313155980700004799381349719695478458062428287945768227810151621123943577826115015937631720396344919678538720876522545056471175821739,"Xi":87539254384948056803128997504185980579988269846648602348410362792805972097256,"ShareID":70024534756929667616115849317753032895580033020239899587896153938577578972759,"Ks":[70024534756929667616115849317753032895580033020239899587896153938577578972749,70024534756929667616115849317753032895580033020239899587896153938577578972750,70024534756929667616115849317753032895580033020239899587896153938577578972751,70024534756929667616115849317753032895580033020239899587896153938577578972752,70024534756929667616115849317753032895580033020239899587896153938577578972753,70024534756929667616115849317753032895580033020239899587896153938577578972754,70024534756929667616115849317753032895580033020239899587896153938577578972755,70024534756929667616115849317753032895580033020239899587896153938577578972756,70024534756929667616115849317753032895580033020239899587896153938577578972757,70024534756929667616115849317753032895580033020239899587896153938577578972758,70024534756929667616115849317753032895580033020239899587896153938577578972759,70024534756929667616115849317753032895580033020239899587896153938577578972760,70024534756929667616115849317753032895580033020239899587896153938577578972761,70024534756929667616115849317753032895580033020239899587896153938577578972762,70024534756929667616115849317753032895580033020239899587896153938577578972763,70024534756929667616115849317753032895580033020239899587896153938577578972764,70024534756929667616115849317753032895580033020239899587896153938577578972765,70024534756929667616115849317753032895580033020239899587896153938577578972766,70024534756929667616115849317753032895580033020239899587896153938577578972767,70024534756929667616115849317753032895580033020239899587896153938577578972768],"NTildej":[24366917239515824974480442558600034492208859976504581465004349103795399783288421050831073024860369440303795551299953821996018530997630686285237603133194573622718124597460737572013930327249120648302190449742363261573076443183981343509885970573178298207488759436277685910850783372123719807298277837194569211839837465137044422691734879346883675317045008891659749391963717253895556693016508386391015178130161988317310806894350108084212611277788190739249760699147435109968242744158314817905689533615803297627887736048945645075792686416602832677541152918424023805280241226851534199867283487943291927564365275467582581271053,24760645214372673899925400730945520473062951341429554908754617530444794660401836428698520741646966955149111758288194803110363170964340801072472223878272430220722034553855593944561986134993071918255771235073978495918874383067260043443905506152815841034811512510858407909698555608803009379935760654878372301870950275270724586431009354962811874333750886958869738872804882633350285507993032763679234057221556156642769183354423672540429587887851343483914923600996425040023829456198369968692844034517720322057627565080062766276792221145223750390964637842847390939964073972850018793739320669513533403812272268817559996728177,24335507174653830446370401218472354012341984065893977351232759664219171991998539382418393419142907217562914494098827810315198583692551476438232634594991137003295122745831430159532586451010818106345725278793436836406022036374386618877645773128457664942790386603953998246404350465143928182109615440037926218085391564421745517307996722808502413850991173460229650178023548969664557299385141472097112836353938598657235574893430259143862369227601052831476146199261368117297723539373329843815951236997008000605506966102265798289158763516254914284024816124992986001907541315389832578466014006010753144367487203071067653140017,25353120959776139123294155818546513426444543204238814947681743626639583989194265533184090862296087842527526282860965927846515276605818147773016966742984780344247645856238734726222917730082852005118152200740071409410429096265046046476115230269737050878141459099734884888260830179970728221214610731604157017545322535971152193773221758709395769765431078738204491094323008301356895841037132747444047830530409305765562694358003007195242702308043142399969256485870876259711230128209178441443167004632638027691911658424285106297785382963002590496015895572427776988235599297735903480964253948429971597628412447354914215359401,29849885402332341621158797110436829396646924395042456662853244309209629024048299162272105169817115314715561658954210859089958590864101117136365470947498907594068557026997249170993874294161892140147876022164668279854630146959174794473879294364568105935870579392660025720467645329300426773479121856766502569984218591054914763859996476236063750210092775547343099066989888106146219058807079888624162205626100491953381078296178689026680702514982189001052448223393538379392778307314168895065497502603308074595916000270844935723623383768691838356870704054233137068509668072099435779943491520206735659166266930856700483211181,24303346306264095483727907643814355785838936488512300414348142784703917728792656928355740144163123550572150171398192480623395181408570425672723511597546032812698562984141032629389936754449924613948711482870260420456913877526422469201798411517711928654451945040790337077196569240216228957228264615761147375423719114756511538399142649755527243797217920772594702713281103939163745422429156605226253637010451757984598979666631182977221341184990723224510127460146263007980086670575857365789365543477249518437176817144448210584125518855115672157465775432933601089465408090382773104140011964681476656187299047937685144419517,22663176204438991528847068755997123453980704364589354833944958947785385672266299429364336994892902925142195136026995771544990684289261678272550855925683439714148609523477977179010696117909805695701859018966669150739407573082987363056991238107146673103957237104655136409343763639221993038484198677605284199701204669351878989982962102150055730219424526668206392140254467740757469800556697236694088468633665970603098311956910105499246381935436511205439918717236853087415401432056630404175846159692661637004967185601880460514710913037913825633119857629058574151126418040291146967097319384900092639447317903904481362864461,22214406206988221120543596573138808869312423548073528052574227838235500966558488375856182495656208729058219131190228351185002058116343873479198633895772314072671413818939926736318457089940649635331152484030046857163634723835906012553106874988855844579826872824922610248380139635284283310239564378546105159549071234915504686574306652852285495484227675227079507874801353534124836509674143920296971261218965184384289987323806590503991373066703353411925035343072343417173322682200148341574699074894310006001608609036165489022667366737175975429277190015768847957906950063130121905159960720849686267420829596753652148430921,26992054981062895613627607261766199835432715284801801749398907129229048796737348701447929605174559094984645968238323112325575430714478210726667128296579144479334211667227791506349731191531989884599385537951555136889431648507040431760656554949203843341649040209953028348323032563665739842658324687215759862340780391326904566525914822596715715051383829453805370490781186878600411802395931887164480044180689343432959074712196207660797594065685195126347713904229309636698471250350144098081500570797555478540127343168177689831999672573508345263924360426808488416307292793876390765153143370885661040432948994217496537757037,26883601429347938201866566412436359463282736845136879263977010812101340295160083165177085686402734295128738223195845941394861534416081222492334460738589328436684156816061652087254848610272225814333318089300032442695939753398569200283276971829978683842747584203047240258517693679059389343721225356421724973291878661622168915849085533925700422984364421907650824486413330797840743205222070155228532990351439410717713883609930796830287062705670943579996135308824473851899048361474382520461452309816639861239026761274994745411785747289015653392872405877863169928875880404134872170564729075194783267248873823339090853461089,26675898204441883357756938810501612911006923314113656530850642169244358619346060171584915468088311545710004060513299980257359925141562861692364285790755062927815783069742814310907363159744172010043214941961935176791603921250085454102936917126214113873120405883118273636844903335000473865105148550590214462929117780405311499444885924770449779157142014006830224170685309315154438797997384633339817640551850145502452900467824909085498261391267709054450200313476628713250795473832792093350711410373115197160491274663551092524073340836221397352664353235247831158949819050115215290772010284539607969271690219902603821582657,24003425727589170532663869192322030538943945148822062399216337010945961427378027710524236529045097740008239529891693854573603730323074574387306355517555029571396270483790272731994105657673718134894396083438028861748333502807033025075738141563799251049728691667635160338770958887288469952328987442729682278796947289053518986771911122562542149441355230810099948748099507142060010177281487688268845292432759376770532767245812643377347484905682286529844081415426101824234408564247618590677966518836555327692461478356122297916534505785216531638872958168430321684571355170353352724268927780693184938724886624339722183259421,20030939948791694094921106997836532434578994294403521371501479100010836848962747077471607238761388497679145378822499150459403963802326636975589780084279335637070321781313502047027883154267014733038805978970710176410579107929485519779112034850622531520287022547371539439386174878773544830750041302618611105173361798826270784808992652396596786821436733488377837349284332001375201088424331364286550732742247150161681889289004480841207149941594126907534285607712061943572341899739867922754683103581617612214747009636033814762750497302268078808823665919929249386647148964298452596399586628310864464196272071720395192133489,26870132374951553243581913321377246229771795848056596419360924847337540300978229013002723427615100062690126686631934134732102152941473371391783556453709425066357685692036492637888980565254013131275256724381428020710512422112788440607830591932440438849890272166273212125255293837259298348084558313308788645038416611482549103781514142985867750527012906984385110191046837459757808864741583473057341019452578423080700589131792924736182910584032669431737863108910781465411300404077532371983623221078943741087750842713540302692591604785862604978245628364756611702919842339423052849035969584933072813435912401288087398604921,25781309885353513172762417920559862373653633766198016154431702305819993747433843312735651525316421555779956949217599915608247344211910767561492880228357017663462131839160610108626231391786518524635537763772771732022138542377442385539024671393136972077400774477946909998449518641822004119697621239956294809097040644518494643152713366295240127317300380586618659118989790014789381034410565903140125870883802621234783419468923863900036725871332435066935174631607488613764393382263135690909855298574769132391272005233712859895795189174927584736869111985784832037628893972777670733794612566699959726190117505644366934694141,31307948529511772422092081620376528723351660195178245630091738647550584183808045529448767036136429258045017880313805169530174754560039519751935200016137594525166410173049351154227454247975670642857061354284229524586536451868860885813714578893448403685065908393856455188372709054731049692863370865677701391460552630927498629863324809550335559817235997586126538332699529118621351625401581293898546298753212618743290610874832103267345624474884402930254336353399762494911879332332316505133643206864735435683656288655072941785814640312959405902536938955107787448304325831133755028455554235924936888965889253927315459519249,31466961232199038206393986199348595708256863299176374148227521484010795684260339468184532260347996789772040097386032241172658309499404470468218492541809815234208995118730337303514831281668817831605535229415260143432704661750281094187807328676322407373913844432440683972812394664524853699586055958635280164067281091412249301309251915772998531080870705450343112678791059297982033179252277552572737658097615320288170699408198262523087724946180097295208523307748556241283633289461565623961341136472687878275672606572269060361808996126027608464429012339688636176786148346418213288770613540923635302757146988963110333316781,23282315206683722596094270562333648753439051790898100314922005841725502497093211800334393760989042727597691714582193235713639238284172358062468387217727181092939568556559834956352385929118617242221861532950969685568622107078283773942779583910577282365015752267710687089071780861330758005577221151609134583129504364837341221471368611555190375227501319216183854908348755278500330379812379883892909358375120467449644585220805660246421673078936109889143381498767668445860590513918867961598096050612727306953235332046855083649560662539716078578551485777683734466740521988744140757231408246451261769915726695959921765032997,25091337650425677853684475917739333556784369056148930585749057080859640921803414967035499248336819782755466354804640016025044002503128223804670636762370700960312352761126598625504662989187540799606658080278007629478214427447535566556662347722562243890754037326739900472696108231869156013516647618154210840364364919089100138905499001603568088340085110153219085814807927945152975657929969505495173887189020701090313994816079981109190512102678874334588894915787220152560380696231794377692004958328931143825599595181025003997691503128188855105160353707735893011124272774335559316106266020514461879401833904958202494061001,23827659784682250604442454473547796888740733968924087692522596947210995569582513002946432005898923676155984614087332560259943866897650716815951119740918614656692843602108809220144973266843900928325168304104193270024169252614460073574472494366384192690720704949267653372513388389564250659367518167586555169618994627094576635848093242114762843534765611200879960614166650643590955853799316870443339993391685970472310294098785089036360647811365521892090305001153074254408707786436158648387047030717269669710808288303673434511182840032065481730245714970751088620360458026112893074508503440200554493648329036195258926190733],"H1j":[10024025457847388392610646066298514243370787348338532750631360639913721829629888261433439914402718667116400994500512300775136069581637894623537510481269716297031115527602912311323880048384727148486222115704187210174101029381357780998875764924841198846224052749406474209451141960414618133437662859572202780961023516801781475926753784006105642819239485607653090319392184244933555747381471676665633830261574288841173438644814600240117247473386184548108338325639763390271130259071021112922069642676901166841167199223435257080313456925802886649375691201308332777566495693037805296244451983094124223174758130752134991251259,5540062908155010932513159905564312164946355979316528931149460136278288806659772940588319017326328094974853633874382463976169195549392127817304835111543615409573476314059060881338397061412436243810139473181382772109210271463439624149555390649740374635589527762045108740275882849527695527198385706268316952416235237543464363519203592980469637771074904708426157233888490918907104014536294284692202685017252106362206847500376336741712522098586355602155374318553270307953934712780754034315941245597336144803859821983984428471938659224631751193248483706020880124594451403191977963618445462632103562894369717754678411970157,7294264017980791887588541945948527964732046841763268733085682296431903566128312881527716171471646888128877802321111011007465120561544014131687975703500639986893207003039277321438260744935109724584373350656877837682253991859961109267518971621013884413991023503512551591742311046398421527897782104779903020623974791981836764750802585775470044046719785755322826006147242995196401054126149520747563133877218253475355114168420889541015916952420416242677374123641966631897855997275959219115766326404348502491490713975699304986526310844436386187304302850704361098476666746013218735172029033252239873173053183420490728457969,9501218113444747046512167891740890620022448184208745016727575118910400114702536042272711158066289559244823855716406559728787015762712355980741317225927051706399078523944764818407725281098361563758658548109686452917704268397282493394145905917631338144130662786869889947744035847462163212831976185178442327943506290185820473986106267053867388409405767987475830498385924106417897644176202343305711004215516685101951487059182051580662118563531777396290757514364141633090265347173402382594862836539162320425532069699769291364183133350523773491418365804493761877536170212947415911627316964969637971056063543234131063060179,15798786414829945409990379475347092437191933825852017565866427461531342919124334651290935627606571949258216191049074056902849155877229528326934734579833314251986756112086465450838437292200045064209850028597082873902388658379469441564667669701765841537160309665720024332706155566138689213961078587239980763899119769146527020365437175547591597253422987241897416697834718145603044863506510817025716990741255205962477142190641478116356939618991137525950385435749637759382858607750867147376236491183474725313362128439752969796168290272602393139910089130691220986679844969299810559606706770072567820176650336982258175656069,9335293725151276608993402038690349490322365392613976918346481216796454921531989892317554215286413208524498017721329770260220214739976276463115767516661469141467987234112799014449837377419827917305931640946522287484467505347102693011074644574833321939291182991369361351550845549986196632347752029739003400876962371840702829213086378506709453044627207644282674209652698873675164479665879605315024759424379670463637654094152277916485019222649587458037242630015801094579916767996040360006216068355347853880839844214694922100092515535187976540400673364286904799817798092386690711558542096052961324458158162316849747049802,11928753658530568234030789407795275088740952723187227006977773559909074576164921817701724786519460916583196165018163510774039491890001017299531322520325627826211812869166690445989428530376091680807701566180854522056382923625327483414081231404244458202347765643506681512770879868073522880161513490523543914681148241833246281106290736532685240004675518845019764469048182810211653160870255293592651339935498048137995182398802459841631852186888112285076188858851763824315081771524248572039785549974159773606819792419731561145595921289694471859455550756883293661073453125644271107011011223441502328961618975292599286540534,3281434421303304451534752490245528887879239197847942017450979313729063086003376295872507109217827492860554007309921835555072782997029442232019030164252143769859146809734506916627953872016140383116721175515392391691229687480990552997729334078523811275423771755788388400181281035140972235710503768780977567025805917901565574387698038208089499892809008311004708551092635216129712077377038639345772519472468677180077197280667928734700336917165150723117546746441573171713790905181182966896063824517476166929486302044010896828146903022644169171194514314475627079949830761751962833520028060036397259454122764395181619471620,26798335028033483015595995885818313899416775173626251303214746152969095667991567148306665607431284548931904800914249634868412622200397325111043206330920355980127737464934048444736064518743501106031852408038680600709174828761299003903687195970226223339349891916494477088540593890862438659139800883091968208023580402075789145180476758769233643214633776274238005081673345069570155874633220460290011162900873068065044353387042255376321331197145839355270876626896209116281706932058419419985043694684968787877580180579063249938562059688827441196772120556845945709093021801017783532024267437712559776698525435075445312453530,24379152218258906482492311550879222904032299657142525355457269472724266562417862087603238266608926068245433152992105088073531452805187189356790567435332219230651301413762858849116755355885877930185483851669316692179467165059725168458003778120562044911094551614016767541895327106348965256725682881898632251239010971342586248735804355885933092854432575702106523584026168029150861398417670162335859972289331761535391135324650197244391340985538289280848512779115086784546807731473605687728417756436783747883720385660475468617431753857425268742613699673867257484976547014884809737803594445736805689004998882232608324939099,13639308363088689304499602606006748747737150113207488794697369879342136632158898637529348398215211110838650184450613858330095458701807309615170814350482223259077017423473614957663630359321153124867291328161758174033028972972743424022771180662104664036306205285576270109455984955077713540350117086087967860191108122028954920957836754439818988959156002918996099715859267715547983808966864149367592758343569651869960032231333418638792990340363087590766121964019626938526976202582697949104351928836667810574924696014475214582129919944765647849262874087078594478919124600690586319504349329877883243753775251538124197406468,20806324398112704184576243642308446225385834167758222047710915865491553221121456559290405385050181445190026351137186843498701962906728774890279265822922302262674344261443633266351787522423584433088856438680222017039801221837510594012303704942258177163584539612102842678739854493210477613035711103258550560273478479277362352841578985334600196007452719273341052878795457240578018430753780869150598290734861026318283861569123861098217259089119729724503263571923384603566241538064572968952230647186501970761685868678332574820155746476145383468962025352911125509572618602029024652380792594855032573631797517407433780124767,2984534567830588608251691688517562019886934976940239944296177755224193834812017598586976214786265618202828155437088641819872658344085523203617440122990791586663797768559098311449463943487720199704106941788760276946864277974792415345700942642550277726023952217616537482804161899962996481893200668973584167349538844293867619144628567178172496162265433563681342772983054368775009029385174850706677287569940753312983986212778939947598815595002848721076684937312652495527309505744053588382568512842786184034878250903582357463020880854201625144449160004603244837252628379531756302498757122746553391615927560808029960266625,19681285575282653686371866964026575635551812532880664611876190222601081859688141586553347439412758942096084877111883472375168961225184324383968489352875717670106440217006572540605411871630725641391171380023993395232691314662393923848318294382993540810449491616527524662991307157899373490742858664974644838212306475173795164847929404327886006104677091872987173592834296913553225843321065615965897920646645086083927169011172363123935140462214285019059726271437492418936191962060610764641005376370506280067258828239222704103600176916708092576268163001234852617058752894380793333304339677721072271552272594404600260363861,17663259858420311330651766819499911841067663794994694318257191199872170158137865025958007148817857781638492835306514771303332749042829120815317355608633338052028835394702531720709875380635913577846095483312528431723891955957026638053673584169905737554185634030129649039016018518994356839547241764882921390944931575304729587593422442361903863687010228628846862342208853396044641495867576785861723973159597871732538239253298128840563941065388954934551651787261972744712209405583851147359110032083949020208533161960188954813739180009449972293158373021060141688387818302891372350131649013502869609299334048318236045598871,5298970575809274629438935393989318057761764519542767586120836445032263316761487525811021815951911099884013107458570792999455520743412617129043815044943875968069243444902286481323598638834526377417104328855033745156522241109248831526582827196555064828920153555458318257230359794631019067306886747836486535385255549193636393132450664433886493509087281083390290568729201571601929480774638279112348846248022706481056446460853658284203145411150560753280109970030570227674159359532427547564201906120131477615407933400264643596572008335881981150704968737407428485573362254058660832170694074403410494545950595818012264895776,15913403370317249903846545253264583237445426368566054050873204733344285093615027647693061965382356514660489490017289737470216855339451599323161686141225364898734459213317143215419647354792387760477998230133600223913390244574171627679693591136928514907378143973333998319592583595882555481681002615976566590485876365765518571760268938260544608828017208378436062792581980653043467844284389159435925884731521336805223809049222649874552372676573497110509098941429212961378401761184902390250234585999298135037647853709390803265128558710383431672409386841314821848625953345836234945114508861921890833145094378447829164485787,2290909140884019351426250008814545735225813230804981825833168241438120125584365814035371010990772186759925886882837107545743421629040643022748869446583860483172598682089887676740059939878553272595424436357723367398096377972698494175572434136161599049698027302739164581483237687791238697379241703838109655701932792883820617202754352159209515775921392841098109717647668579384288444138762640166641466203925793570935398566304261495839675905915184706531257340555764797653386663178215604213661066377035729358506114543600757612373813217341582075351741934166661911856401287953329256496263459473595206461438549716253839581620,16642615813361835581230500131246118445590603247887791817817316273244438476256311337001611675388574331977410141699297630317377151836311293305027088331310025109780248001730816502531361314291505497281231329646213545390817348454790771602982974763540004526670479533111992035177312072478629306988622806347623090425003234077873805375141062348645927401285345899503907001825760439541705306585854742931882134500925066002906885338189163552908934604616236359806104007315451823167682352183241953279551520079950202231330492255621315016646701261669501844925563045252616708085163536257987840050252877140816998011230187115088535718084,16010347999096675182232092054526583890655342476048555695134478148077646319292254202928857709848426726687922101503995183630866920756294444357812738165670087524526688577215556076807546011943089084967115014780281986236650136100212790809186133722139336439667178800133917927993914606420172087843235000579778849526996068548810587854703520128067422195406060143205277668392537421614569464766336104310955572146529110182880365088792241394086157577886083440548786679580400292545275535505024808973895871707731827445166453079771165377996477241584002682623055073167645192536278061988188027824852844065261608054572024963829903461213],"H2j":[3368171208877966911054339907901878144315427177489764716664525147952589494997571345476952466465636584372230416806643927079294770772639785886747559841089671070120102511739419185926825275343129268693107584218806327021288882477748577914215697371729166784288283440868236399459954587383445757960644874348547417850473459042890356424271874499317095341286743556259239705095932387025485711185437452734962326711790258196775033662070121656155183933539103178989257156247756946175745703344908852193344259286268186560067884170926994359970521939453852919421341990972981960061011629945378288288327928173529860414633963687461741921536,21571995110918784658914871089233085747498481392093921476006031602493786671249981878215451382962183306832489322303548281716296137774931836883062638257871799588636736223841397596603236825079859053119441636830060533162035824030490541191082185733831191460351456499274515867869223195196735738841516139421749973183291711819985317821732516820314960505801684638233368245136026792456696584282458766742520555425925807015416047178765452538113430822668214923191463369535833443605844329620997852520039896259519774630621573507729397714725431894641714478634392952187074508209560077240054333035743202911738795412331854359778973195140,14361846248841354239738429614485615020817620015740214377557182447187161532145777460980697522328331383902906916852306307688790083451608130261350491455026208295552005757157547049806867066926847972162187184750531821995727255016828133897770613409484181886065535775699953909464798003780913388918153183011660224430464726560354626850573087079518001579497098985920611294338802921392907919446517107741456227975646401634963060678572780580998274987217038988195161229432595476488751730989311796958677066257365863948226172977171594831544011639884849989931328654207271418544321580100757601201270000125579606365984683036050427736901,3320303882237934822574723730249906877625782534310160672723504685750059065549780868692191634937564489497907122877469551544554741543440051593275714064385262048169355745443620314041833050794531307335253819559894664711581948933864857312882072901440293913927021712377972600011615454373450050526995352982830050256391443830850515525775497974669346917338799122924286263331475349263163070978610950486766234107397409979634217974050928014066919223534136219934067215088896161064759214148618049130963680983012705398939807692207987093138939884157043400363128971664499276483693036909962979142844998423058170845192989653278227244556,11392712315645310673556256100365181042182208368042016535682634838624439633464280578340353342992697843456486856323709208993769929825667198124843256857854149171724638555790573818365215224736100981973384410995558183533272266822358013891089919574254939818330873527463833155579817319890250882056946018928950519405481352273564274138745239339555689528027209630484474043328702633331977168775903350557929023233359205813047128230741363083482041365845075249319178793999005856778680811779083784522911420519825713738930903604514930432327435755406403484491228343075922083298289929463367612180095879814334515830338256256962304365507,16128185768089596194287119128971616467728481679140585100708821051566471323843047828854183726318833284371487280925375797724567335316422823058316454263458054143106806709907496680547056853651764349462358556329487313360470751830659004515085115085503406434144518308588359624087795942838829972724870214686385899497790143468039433972576851570857473482249444251166188717970319339154993972583107254198134043017660882069243167380269891894037618164535745069845632928065376946760432598515015966819900477155552863106379035709861023910264232532374352692943776001019180723682584987138149276551856921296644229421379331608912433891787,2216711622729147643119351601279604576561222476671706440839914460051282496368367881534683081378746937805707571316950268212663028051018612966825594397873907399847514954700788018713085783872783310865267981225782070802491186153117333152717062661110252994273036185050571252614763467112197381544773361260703440205625252670499456016034457927577251901944688698835868136916669160283880144324751412122403729270589464975875662168775295336481672192780137765587777958466322897160031233145485380452023766308429956773283861365366429753738225270634870302712702783980696520536919562785018253963272279772947237341901826167911636277398,14567981249611770119460797088791616882610277285940857160650608249425344206528691122331543913667869847178068077135905754757970717904714688019328854767805335556395966314263235325078374161755665460346725642944725762703818596015903905714083108502634334495870792846224658572820537006327415243377500340330706127007814008821793048336577227035431648149947100606065474813247441707074217050761365292856644845629066245995828609114930249956124849463230151850823327413055370077318181578457937246716760725440912216906628033172873929155794447444347775998977195569636526530564164070920144286322379557192066768871877841501668738723305,11562467842115790891804601373773643847126621903349499609152938962148770984937205728801191644445725158989276699296504193090664088648177394705510081647868491010141118677836328015755807190340752111789458182176683494843129204876774659319228937425442946958815453444622877125277511242659189800732695804577042735408856749044867603169231506434230337165888447884043777386886336176295745762185799165141571995448994795987563473269027183930075484844146542824749783851152327060411300732221330038342605240436682988238960554043191119742665518743299119772957848539797927531910599793668616983919654530567233469044356313491217598173963,14001988942247671750781482079375285966547579414294794319094213847379686940578167330959958747320137628734714588973465688779508774703004652572462868416321674738451567199004872420641775754108356291951642382728451341563463073268234897512437292991864411475522021623042299363078178084134670414407763213420631947305174457007699331702204294303015464925310244650403343929391594959891748515738314022772251420423895070351394216428634037166244804545860754313566530581379130190514697248618490807663014153146208137639940027271688234812971813570187637013722635079779830294526604514749212529717398437104564243590356265592707324430248,22660381208680529934440965587759859630365737502029115748369924654698991903261875827625444059798716389150600717053198039271991446052177985348107490095372700835812383361394955848974961135498980301472468398590372824927166661721168913896457190085269560320077063240744390945543298734163933076390800852847268723891846915780866370885782050245477056357544654583119258014409021504561016925378839878361190561580782875056594285065583655990468688145199834395357403106937935824760810934700883413929457207664342072543405193505090717688282434192414638239406093224709925453132516053056802277292184257441746331824932943075086343111278,20472030140330590554727016751322746521411547021589348812503605132754052870300345339453032427074737788538570891246727822818774891000538284023878268779231690147875265496447517546051987993131805558030308294615301233476549529141133753715149811029684466002817709334036803452074715441881335148948617848448549417354051160238759910288354822541817903899839091496273435021826344319441409806973908079330351993159801831003550379943098083992503486981995525990398355622285332802868604496636639655839747683821735810491234886789689703654299736502370849656509374303361111199544583501333765966424789805698080099714702838932727164170265,2453173651401016059883376082702788558595819343620938909718003743834761063920578770151771007440124157356829685449240956671627119096461094862434828440771694576875873539491082895345114445338009283914246401641276451109273726841868022516636570181871922631150553766823691471767095455577358060583652290109547591748476465162423200240371828509110384977101559949176482932811774533277255627251591525680337416653414697852938946477765739575989782561041133771451257557157756072849234217247160968445068150218106127891386897699168070200218755068578136094949985380806928006246790329032200529105916916706533850553672076045608730359951,24113152339438360498818613385483602121911555739122745946787379178133957345957135620586264478203421944425299426192146461629084303328006516447630615633641891356240907180660156167532682435848933370915136668244592305335752238307655218128679169067763462102575980085156721937439825798887974559139719995948680828470417607776837167245694714142889348485597791698351034577938495332154328968099025912022930753095015877561713107591709857548795164690012791766454787725487399290632750389338230767552797412606609844617222343058516288469384643892784348204522341997782682670665258025662990169755315957866286658684293611644496873215267,23048127989879822710411192866890144848102725506107457207672066933390327615164057701868652098516421397166175276204189099923035751642625511125320886106285613893278788342927698548384268560900735111168363954600824026890037073968715675372129633119593307084369015870114545021114363768521678984746381386414166722200844864695581741219036038918650136132423598216731404838838590398569938445014697553573715959930243891120229359688175340044395042982004999256741864583061848148945179825358319553305735497035945950407010348447423433336328707080153581767979294379351950056937128181379551873194994067035954630194182060875682649437666,13618893464695086149676203128264379703835247962620883770951238013108147463339903484787069986025297587613907750851693587285998342458273645890621629308654871877706080796956646324471034007240766614380367007821000885398439611969420081154359024999574164769946112634981576459912811818772491470799900760145047753530968995478407930477477944129573287306569838212654312701822189291272987922653156057983889008935259264244527455188704827518079129994488508788103513618119832400499449348458232904888661877972105894911067928574676593878643851258312142433749927142945806711403413926146774157545099025460329680057003565864119710344042,23894029291617241391144328899509691451082120805949912944383938437120322549284785238294999166576087704069349411280857670919349460489513399500828536265895125463653495907166485758411354581066514943080277665731467417672021474933030712874768858153808012182457456133833868682464778542510979705494991241834256525297885337509013426009068419788422403698033836643374538850826433098217327104341285009528115639746062522009884356634868057714134080806096522631119686584895158882950387390079669636785522392222833493980203199840117132536258676406629318977553433626720193118379634005263005358473104730141003648560474105109737111011794,8925336938516965008397109104514048184046286665452569746388287155124102463448431342748346308295582163969585477123381674515410213967775651281608577967919981280923720344420733336038269189964575637162708585549385406099462739524026684819607311522399446887121322482655436562521377082292558533779186792041587188361186852658931953312216304602575717772394803653647861926317392730789837892117863267885605817028617970756887793540591824273228108598874261690153175536884068161483807477696239392976829822163308261960542651335245650622440817598987961098884462409657203750437907285145610244236094931259734945402603438305753971150592,11949666259971918796589430623190075546810486453882961593114781232790528357171489136086300172564872735213582648459678932324553671446193373613445392996846768949427585353892225809922873734606473958012848905522095066153323414491640379067553063059327565094898320425802881846169782611727703042073646692303198048486923691657532734229486488161759607766287874080676488615866925028524263799527274261471472615111756048644281578781133899646868101860588922113737985515123939591333283772116702698675273675787772365936701715064375893211337204849804346824788133348904362412793959284749560448461044309070434592388006426231060171764771,22250566339370324059402215781976249391077086920660167269541657986285216346026428267640441435642495757683689137264020871118649281135403445710476580606390835296225377720486579495200200373576733192798872047011357659910138900430140520045889539388154712432007987497852789128001047310532391671755193946030519165629053752937739899959567496721448943588557458516035029605073085115080892712303741049416122614132971525567297514147438256957998569093867126816514230762539072531021367441808139154778858187018499802649090111006001230394761758788797026721593274233504527845651968558769656875733771044784061166465882679811351871629592],"BigXj":[{"Coords":[107932666477475802631511202367582748861519739569035537904969017494701526323818,27810089900979531039053592509940878404833992140356119628629019981009106058899]},{"Coords":[70488850009775279003934303461546816167586319901288720095232797816893086714940,21365158033407193885213404713050228625397820553043856269267720323259910113340]},{"Coords":[96704419145309517259142970140495022508494287400107594467439362232020961329299,76628584944766298203991062873793502752240767184659143342509677627090500089962]},{"Coords":[28019161860991754547254544009397503028608838172584402384170752184470432984674,108882834276696603625351040619123218095898824500661874818668494090573839581587]},{"Coords":[69854419615803608419512220164651266075688659942948825382651503385261699188382,86209865999364219341605400066204025416938700532196803014526015416182305901566]},{"Coords":[55707469940275855599640808250448173151230633312005616373715718152006593734016,71581471827456608524472614862044126332419275513283203837579704443605501341979]},{"Coords":[31537542564214197931115404850756486671358385103785295421162883744455005249506,31003647934233069190792056145926504346119044635106496026002117518163562078840]},{"Coords":[71459743938853567115182393388387842195822211722537627655935266215390092032802,105621264392663357649957909617094860377111556629887291515711877643951632476111]},{"Coords":[100170179262204638729042299933877814060918019584852761639094198183345507736585,28900877763089774489040863107152228045173480683157331262486804734772631569442]},{"Coords":[3393930126761759176345687233491451168543634500428196687848693751772795262696,55773871461934232294712308387072487465508923595028614508001564000526922809830]},{"Coords":[35436174997161384450863357581481493940397620545951968086180770941965008242533,22941476771782647278770334144010957938195504420883358055133977993491797250976]},{"Coords":[20742591764203230819083960194719627433799141307841650214987882235851644570480,36792680781195360005281832466704518433303594582044389944698351592636972852101]},{"Coords":[78822613167932563650341174247543824338627391764838115664582901884987316485415,29305611808246076472515388603014476455888609363718621630903671994111327870746]},{"Coords":[106662917025753316359017201639970683777210765763056751174154469380644107823988,38376047705320523688829546978146661452201839032747402442602961204420046730181]},{"Coords":[50131378328647772110850225682895027165473791107252577081428683178756073747030,6484525664721285218064077598136507537588284647694850022336064622644441747313]},{"Coords":[63814576207919556970263190432671978386229401573575575774195362165468317841987,52351921007743438678847732376277019290979039258214198300788054101141627584484]},{"Coords":[33074537919982031116943260590723731125144796968052633499149040111855190089892,52462876494517613825042650703891412581466209764861573326649361336309483684004]},{"Coords":[46337244846970653814521818706394664913446423803670640514811670889644615970917,60622380590936530234720907025041106487069869976400399621024354043945489694205]},{"Coords":[68932201886808999446322681662607675293176822755681592496851252047161893154617,102558540543641758967834783938704783088913683989892796677072783324191846467831]},{"Coords":[47093684301174743530406169926797075725911173707597448168332637736184121729220,74517549523358620639964596401882412428175945976473031695393603496712918162101]}],"PaillierPKs":[{"N":22709559588116531632086995360614881758145847958604375585917706994116168375700793376291131544827864145364687259129107134734036373558516565338923959924703156876435469021413354399418993619174071015237246272863140297401272631661028437511282301913323857011886496541494453371682094558243513835287198378640755589750985308457641295136946180231598093936765306071278862423297167033582450972276390473663053961764398615170355333807856718875047329620163477731845253445115727590642190491372191245975524943279344261890117425706855830582201691939059698357650223528988243289388677629074389631868130733940366531485671699566601163615661},{"N":23443957150234287781524191819714980056334495753799141564738532515877512840928595615570444488815473106829833471979932833846134743028112638013245259429585839683894162551870479232892081727695293106142145837752188330564435054323350976552725925455074206192778580457152750035194725712966851385101176362564718763658489874740341398176203077931510475924742361380746164713522692182335455005818339528332609035897638651762193188267900136476551393608916669622907100712471489443414455950510417300576764177277906265582678299980344888299166427651633758323734973558749488731824311505669417847053850760848940423643750519510719400853833},{"N":22287028689259504755807149120904050002396020193634043129060485604472139332057712093383073269246020913354970143960065213561811698182428208504100112877284663913440710058603853492628849020664094889598583038642474751945815658301741607940280803922553940685657785019086609257141579057485855668397778602262577280637009340765489166395694519909332104264865369924039797553524566502151933416185073911748303993059047774791584591703105106437459703251723998725467328206119091524784524659754164199098692948259716816125731645175450298738430174307931086107554346505367596601043514472572775722114263120820933996056766066990263737006037},{"N":21778455942403717802437188616130445569467912356333711523204106321468333958250985526522676150458521139952234508699903096368286173136552336834061186195705878795885628080532376972447127537374960052755412900354192740274699607194495256559382391407619506149746521336051948176770581697936379025338953179299724284866217851767053361169462746892201032000776732741861429352495405542992367041691709412944529198233031428083828538853890568987466209820731450551650370292813109604532198408719181905952928419308306626664706489746484860069309396704199131581338218405332252354539932883923534658047809067343949198229794022084007329008301},{"N":29488834801717020514549557511738862835006604218586783270956635930974777840977382736818004943434492491272083417763033198615963445455042431681833978353867438176815774128330303688651059852719975859250721567522453513175104614385098138081209372251486732213899964978141377939387124226524201851559541320231331748973500724292675746395999336271645347092285737228923411234511145980962423027637945866866145915490526131803713409632083226573065035861386075817821231913413262072294132940186959486615122177174171466978866072639941945123654758187894442697758141328636666389957637295324259708835849664958476600091423260629670847006421},{"N":25268781854018641821625117526035412649921406362359871346957405856614663043063881662682001256500050697385215601589085313282671061645985003913281457834036290368462929918763869754871955608135979298238482437377851913552755913815405018774915484866488142406303297444296659799278477225336231564636195441498040062964451813900346208766721654100661710718867197194733579941984196715209521167970358227552984230489600141394198144474928084583860744656840175887777161454380202188440178263993042579519816969496156562013371732648143667185817225623397113488180419930136011024805515953457443050643425221010148081098971618629282508806153},{"N":24077030535873838147372990238338423111894661719881851208383511932936303788667059523325649062922462968249640702042151293306587810036594125879862518141403476609262478705296844024060273562609291573351215091787555942245982552314643486135981274381916357213038852978171063476276539384812002232533351978097782562939609101707149234139391638125337919614533689982228496010017193463462456934753130533077727108799001253943486336718218272844533405886783727956436625979626270665501149887064412642510585330023269746464208739229956710668053204092869919317416558618819105166451453240320574158658174090376334547079951345889147202424197},{"N":24121210025310295136286367465067731861316363403302816495348899075683542883649267862423504534408270521528934904000166037695519824119622953526124849500602533136680339478221010232315859804261374907195769559713293619918530079931895046819311703445607618111244570268187554380693098539122537784889700313005700764528116670706472264450599583329582635827622249925780628859318211609939169828662135675938640346560681426019582628979275573701346775265344080547061237809761964885298244705276139799178175782218409921284339726928435810584460742981474010807766522632224843035722465220411812727073796692626221078545796203402892726398073},{"N":26956782591324520026471701264974010002551430844929064558517606333109244333104364565707985261498791802440691867651722784210280888161145432103606824079477489895607158911928686613189674072708812330140444741131333062722881890279580684791181148664415766399323289281546841599984936640417820094077391333063403828290767644884268872176714175866593843027335088472731880830448148161449695591865312724115778446298294191846018327598860718546463796845910458753293225328770367785304521228332493000905274903063796918859478998380272311510096333363160486944174426731511854410356169028732110892177884127982236790065871058497952170624401},{"N":26249557760815986852034237905417683014048371748204856284575862917968310785883486514046189771449794410062311941320778404041317694258818896788913080156960590072834802977027251267292982532721343074208805165986815554608059680417209847673748867108719737464989377176319950884300513507127044766841349776517208994115342645229445634306184178062065483947743824551463650982111893910449653832587022792656303977671598375329018430362166017195461057586254287305421091325058340750141735758488815547176349755224428765382123772435956499576803085012124378000542928725389368171404677133866847871236251441021957443853014282022367009685861},{"N":29234737641692976595774236923019314216135921756073342884203680618120226690739166288052322806435356115092650761656136403373733697692050475566331202817414926309882834844059857181882811689758047525443057988160495074334079542319370840285641441603178202467820462588826229922786870937847036888109767951604636584098102615282750014508387427358079100450062680715472456836097388046216848854107984658532128468648705497171277133763535425127577293318939184956565230142817502839346792604559307183239212332206857888330805061669830296766718735240517983609617995793272006065303892130080909658027060291496416496673503247698087863812741},{"N":23656386949781378983561509210223997485938600678969404520355733863050336777307520388106184053630795530040934267843013912848246799628076757878172461266778291537251825140340096706161543161977283845709058224884977213986434571463756330276479208682952096086332163009127424608568458165322976353036562065434426650045708578336603634894217912009997772105108262453019882143577371634194078714264992380438885990335741008955488808069468796086801023973076920357953123958081822096146124559004458043648352764252390085772923647155984579633692639191141425745475545839873632550694666801559519849238477058285069280151324843991596401646381},{"N":23799985430892428550287426639163393896421663100337917557737015159273107046495772196531619480943457572757018895004491581880198797117841320493538657520011738472038586707181276745476787089472101888983238214242261897466709975139313526918983914349699164310009561585851364405464439780111046692215844366708075439030620693316351016954915727063684631173044817825576871464988585229583331260702104268887569088888141481975510438061934915565917441018736997897082388887244599485050548831301667982348795441755679549415459512278548728977097478254566801983960996625453970296380670902503277224729081061542066926552900097298958795919921},{"N":23398981485141581657111580810187356464859260220476400872431878471724619284703169207796437272649895475435460945312990810473873577007856956495840504596329080928974891464665270653430872926713471055976901497303072174459471872022720981442223753911960555794844008812776454183058593769792366230853507105586338576934054995838272457499054915439455088496111012971850904735289245691042597216634196809202787360353382667100073960437339209464655220130141692780283364216457426778903461083049390591667885095066567970867147659207581183606534554025283663685502553767113396678790806758816850832944906936477595076662914396730813902861273},{"N":24645804484208008107774215519843481629641338685651268289287772114412526440944111199969614165736177320304962312701073205538949325003439610780511806547845684862319242490345551374064725883323450769869814834613757570218276860284970150303912936880248283750218053176729988470901025014948637258535944241625099061769802348376561541469733700398108049774899180411488580995483844861534070436865153589414051441506488195269353530135159150725450897767102214976100194473384482425657735122085724544900424323758582364844065404991831422328546732900258700279735848044809564185617079126240413557300335393565946088211107690073344594774029},{"N":23664465666512928010084076006211208070039097235865486451752383277009646489200010451773766854885315852604650109050180997494686499532996982524560956955784208153283884502900612829692080614937231941501430129101050170848135543483642879522140453631883679490750446245717832265221232589489474380464199065201167874127465810334527670252907568617820949350516778153996202871756067806159248004814563340677682071536108582393686279672503548392243690499337315202892692273695083478754736347613219568092769421161385508903701795824994052294039246344316342377047969959511601521901736714883097032290625287691937066549723767146291790114657},{"N":22165609813091667259068375406991183583538522584875908765309739098448534648989953434651686788146626220283972510122914357995219529654582068510398362007031593307847827533082059785375352080923687640731375327188268078188971415753864060723639564145551626769223269559344648109409611860616931934210627553354435590764505138165455042290624193631088250055962033560484870481238850988856340320616852463026890656813658017413542014132396994215496811530247375977104307808133564653689276479112825279061966541271092780066027501498091088819663615972345385914896991989394778860649710938578818683661928070093400675043514978345177529652389},{"N":24352137164919775060505902875895344669551891343219870713119659495462675754712808458066602996522267529841963340495194383402601416044030073771848283771276922546693343786778909195920195728052430645791682092298169597213540403251589258864324656830830912032021695409682689693414793104678019843226941004344886835923010707685858497420014814885662783481710790760565625597934856999445792014460533464855807508832344902590088930105318969772303090927340774137226985715726042801943592444113021856673268564036683304420372700405680896320106848396385562893886698977710031223312091933030330629827691164100994176634674536649129152931477},{"N":24388425323514301995345880181969195093222141730097776998750148283180811486102209130079655780738706237274584643472954914248041737365215477795339570700387683883122567928523036945799350046333477704674538444513982433086664207664876244841911099162128315338715496189423824903190803189243082722638413039421880070666657272413079871744422617706188003161639646693501252928939859937588136677607569634910081471599993513483449765647227570734163189729311880395414909879933139619835138785852476313690881562300854512419432999005203281002911021482679309149225773391703345476483158302622073477221903694296256566718995262186459619480089},{"N":21604728584405813409256303272593334134333518895675489098410576803850613670962405878762275711641486977471395420657043551402890823783906820971712770494973201278527635005537714974340519544361402189093858595896231890523544098157276831993549216761475195055251372273062282101577640320665049775934814411518181030603401788639796770568692007642464803606076672769360069701571162199680486773757848273630254180550410784187377722267755203781450486589090106764541644204842436002216866597611146281471192249537747681020939314396157603364418120170135828923470079746789793341042476885118587449440114091973976013051496269141578521399429}],"ECDSAPub":{"Coords":[82191134404558877049244897640959846424169542769967270904890689024123037541855,102677683688073592669768840687667774566029618427936181452214529135934890152533]}} \ No newline at end of file diff --git a/test/_fixtures/keygen_data_11.json b/test/_fixtures/keygen_data_11.json deleted file mode 100644 index 15b8656c..00000000 --- a/test/_fixtures/keygen_data_11.json +++ /dev/null @@ -1 +0,0 @@ -{"PaillierSK":{"N":23656386949781378983561509210223997485938600678969404520355733863050336777307520388106184053630795530040934267843013912848246799628076757878172461266778291537251825140340096706161543161977283845709058224884977213986434571463756330276479208682952096086332163009127424608568458165322976353036562065434426650045708578336603634894217912009997772105108262453019882143577371634194078714264992380438885990335741008955488808069468796086801023973076920357953123958081822096146124559004458043648352764252390085772923647155984579633692639191141425745475545839873632550694666801559519849238477058285069280151324843991596401646381,"LambdaN":11828193474890689491780754605111998742969300339484702260177866931525168388653760194053092026815397765020467133921506956424123399814038378939086230633389145768625912570170048353080771580988641922854529112442488606993217285731878165138239604341476048043166081504563712304284229082661488176518281032717213325022699643270145079297662193933555264809245443838236666353930158155665611070333273281360519678730847121503816504213616971251044117281965775548290004113231272670099757718880610482795996439236599022627729556309862169726503254642877374061782655958615339951707490789659121468317314601709410703339658680900005850641006,"PhiN":23656386949781378983561509210223997485938600678969404520355733863050336777307520388106184053630795530040934267843013912848246799628076757878172461266778291537251825140340096706161543161977283845709058224884977213986434571463756330276479208682952096086332163009127424608568458165322976353036562065434426650045399286540290158595324387867110529618490887676473332707860316311331222140666546562721039357461694243007633008427233942502088234563931551096580008226462545340199515437761220965591992878473198045255459112619724339453006509285754748123565311917230679903414981579318242936634629203418821406679317361800011701282012},"NTildei":24003425727589170532663869192322030538943945148822062399216337010945961427378027710524236529045097740008239529891693854573603730323074574387306355517555029571396270483790272731994105657673718134894396083438028861748333502807033025075738141563799251049728691667635160338770958887288469952328987442729682278796947289053518986771911122562542149441355230810099948748099507142060010177281487688268845292432759376770532767245812643377347484905682286529844081415426101824234408564247618590677966518836555327692461478356122297916534505785216531638872958168430321684571355170353352724268927780693184938724886624339722183259421,"H1i":20806324398112704184576243642308446225385834167758222047710915865491553221121456559290405385050181445190026351137186843498701962906728774890279265822922302262674344261443633266351787522423584433088856438680222017039801221837510594012303704942258177163584539612102842678739854493210477613035711103258550560273478479277362352841578985334600196007452719273341052878795457240578018430753780869150598290734861026318283861569123861098217259089119729724503263571923384603566241538064572968952230647186501970761685868678332574820155746476145383468962025352911125509572618602029024652380792594855032573631797517407433780124767,"H2i":20472030140330590554727016751322746521411547021589348812503605132754052870300345339453032427074737788538570891246727822818774891000538284023878268779231690147875265496447517546051987993131805558030308294615301233476549529141133753715149811029684466002817709334036803452074715441881335148948617848448549417354051160238759910288354822541817903899839091496273435021826344319441409806973908079330351993159801831003550379943098083992503486981995525990398355622285332802868604496636639655839747683821735810491234886789689703654299736502370849656509374303361111199544583501333765966424789805698080099714702838932727164170265,"Alpha":23170079757527311316105778949472323518893066323229810444746440979325183778116911352873250006815112507079989693168513307478752510653849562939203275303854189989033510724062754417715954847683336480092252227269445521212996231116347254141832094254862231785067401485869881010532173149663621763654948283679650735284038135874718798140557387345108621850086135495693886045886414370253193644353621120000369465285341043593629285063545251066835635100361204251358305953362792066969283735472966639549179600787758604986446341645696511781292684071550479854460159459122657259471593922609867505527664086980806180530269996718096147005571,"Beta":2333248996223706035036862678221250981209898761526655455494375967713320120789279971133500951251112955830381763203852391305902024119192089076571109848460489907142092359400666780509109574060240234794044406829470534178565898335770088569067246354255843109963956060509153734399360636644472594026278105497398900488084720331569797886417183858621251009023771332046021728205448141326078668537559421818719734658752711601326536195426770772264297798873912712664108574196220229039654930714591903651558291638138564601170595273557858155189360346468900124851275369520569092838169659147425583145046360622079369016662087246919977441405,"P":72893527026466539988726417770067206952871179894008658514836547828759316806169944040014617019034418852384650955281948406946322723592074367966623638861501415664234831959247604897737492112229914796709967863539250501355044360234803206812240824303236871694662928301436259387160631290515489039908289002464332871363,"Q":82323584503168192038472331241783453999068160884613562974333512050993846934682117607097878896569874600268125397201423830262686169458633716248891480306318988428423380202706410389857277969405844253404659035879107971796207937576563171401365695173832020432957130591896012561138032171618937703386777698461095676061,"Xi":95773191127596562511039766044859121285853268663087989712224101958274252734636,"ShareID":70024534756929667616115849317753032895580033020239899587896153938577578972760,"Ks":[70024534756929667616115849317753032895580033020239899587896153938577578972749,70024534756929667616115849317753032895580033020239899587896153938577578972750,70024534756929667616115849317753032895580033020239899587896153938577578972751,70024534756929667616115849317753032895580033020239899587896153938577578972752,70024534756929667616115849317753032895580033020239899587896153938577578972753,70024534756929667616115849317753032895580033020239899587896153938577578972754,70024534756929667616115849317753032895580033020239899587896153938577578972755,70024534756929667616115849317753032895580033020239899587896153938577578972756,70024534756929667616115849317753032895580033020239899587896153938577578972757,70024534756929667616115849317753032895580033020239899587896153938577578972758,70024534756929667616115849317753032895580033020239899587896153938577578972759,70024534756929667616115849317753032895580033020239899587896153938577578972760,70024534756929667616115849317753032895580033020239899587896153938577578972761,70024534756929667616115849317753032895580033020239899587896153938577578972762,70024534756929667616115849317753032895580033020239899587896153938577578972763,70024534756929667616115849317753032895580033020239899587896153938577578972764,70024534756929667616115849317753032895580033020239899587896153938577578972765,70024534756929667616115849317753032895580033020239899587896153938577578972766,70024534756929667616115849317753032895580033020239899587896153938577578972767,70024534756929667616115849317753032895580033020239899587896153938577578972768],"NTildej":[24366917239515824974480442558600034492208859976504581465004349103795399783288421050831073024860369440303795551299953821996018530997630686285237603133194573622718124597460737572013930327249120648302190449742363261573076443183981343509885970573178298207488759436277685910850783372123719807298277837194569211839837465137044422691734879346883675317045008891659749391963717253895556693016508386391015178130161988317310806894350108084212611277788190739249760699147435109968242744158314817905689533615803297627887736048945645075792686416602832677541152918424023805280241226851534199867283487943291927564365275467582581271053,24760645214372673899925400730945520473062951341429554908754617530444794660401836428698520741646966955149111758288194803110363170964340801072472223878272430220722034553855593944561986134993071918255771235073978495918874383067260043443905506152815841034811512510858407909698555608803009379935760654878372301870950275270724586431009354962811874333750886958869738872804882633350285507993032763679234057221556156642769183354423672540429587887851343483914923600996425040023829456198369968692844034517720322057627565080062766276792221145223750390964637842847390939964073972850018793739320669513533403812272268817559996728177,24335507174653830446370401218472354012341984065893977351232759664219171991998539382418393419142907217562914494098827810315198583692551476438232634594991137003295122745831430159532586451010818106345725278793436836406022036374386618877645773128457664942790386603953998246404350465143928182109615440037926218085391564421745517307996722808502413850991173460229650178023548969664557299385141472097112836353938598657235574893430259143862369227601052831476146199261368117297723539373329843815951236997008000605506966102265798289158763516254914284024816124992986001907541315389832578466014006010753144367487203071067653140017,25353120959776139123294155818546513426444543204238814947681743626639583989194265533184090862296087842527526282860965927846515276605818147773016966742984780344247645856238734726222917730082852005118152200740071409410429096265046046476115230269737050878141459099734884888260830179970728221214610731604157017545322535971152193773221758709395769765431078738204491094323008301356895841037132747444047830530409305765562694358003007195242702308043142399969256485870876259711230128209178441443167004632638027691911658424285106297785382963002590496015895572427776988235599297735903480964253948429971597628412447354914215359401,29849885402332341621158797110436829396646924395042456662853244309209629024048299162272105169817115314715561658954210859089958590864101117136365470947498907594068557026997249170993874294161892140147876022164668279854630146959174794473879294364568105935870579392660025720467645329300426773479121856766502569984218591054914763859996476236063750210092775547343099066989888106146219058807079888624162205626100491953381078296178689026680702514982189001052448223393538379392778307314168895065497502603308074595916000270844935723623383768691838356870704054233137068509668072099435779943491520206735659166266930856700483211181,24303346306264095483727907643814355785838936488512300414348142784703917728792656928355740144163123550572150171398192480623395181408570425672723511597546032812698562984141032629389936754449924613948711482870260420456913877526422469201798411517711928654451945040790337077196569240216228957228264615761147375423719114756511538399142649755527243797217920772594702713281103939163745422429156605226253637010451757984598979666631182977221341184990723224510127460146263007980086670575857365789365543477249518437176817144448210584125518855115672157465775432933601089465408090382773104140011964681476656187299047937685144419517,22663176204438991528847068755997123453980704364589354833944958947785385672266299429364336994892902925142195136026995771544990684289261678272550855925683439714148609523477977179010696117909805695701859018966669150739407573082987363056991238107146673103957237104655136409343763639221993038484198677605284199701204669351878989982962102150055730219424526668206392140254467740757469800556697236694088468633665970603098311956910105499246381935436511205439918717236853087415401432056630404175846159692661637004967185601880460514710913037913825633119857629058574151126418040291146967097319384900092639447317903904481362864461,22214406206988221120543596573138808869312423548073528052574227838235500966558488375856182495656208729058219131190228351185002058116343873479198633895772314072671413818939926736318457089940649635331152484030046857163634723835906012553106874988855844579826872824922610248380139635284283310239564378546105159549071234915504686574306652852285495484227675227079507874801353534124836509674143920296971261218965184384289987323806590503991373066703353411925035343072343417173322682200148341574699074894310006001608609036165489022667366737175975429277190015768847957906950063130121905159960720849686267420829596753652148430921,26992054981062895613627607261766199835432715284801801749398907129229048796737348701447929605174559094984645968238323112325575430714478210726667128296579144479334211667227791506349731191531989884599385537951555136889431648507040431760656554949203843341649040209953028348323032563665739842658324687215759862340780391326904566525914822596715715051383829453805370490781186878600411802395931887164480044180689343432959074712196207660797594065685195126347713904229309636698471250350144098081500570797555478540127343168177689831999672573508345263924360426808488416307292793876390765153143370885661040432948994217496537757037,26883601429347938201866566412436359463282736845136879263977010812101340295160083165177085686402734295128738223195845941394861534416081222492334460738589328436684156816061652087254848610272225814333318089300032442695939753398569200283276971829978683842747584203047240258517693679059389343721225356421724973291878661622168915849085533925700422984364421907650824486413330797840743205222070155228532990351439410717713883609930796830287062705670943579996135308824473851899048361474382520461452309816639861239026761274994745411785747289015653392872405877863169928875880404134872170564729075194783267248873823339090853461089,26675898204441883357756938810501612911006923314113656530850642169244358619346060171584915468088311545710004060513299980257359925141562861692364285790755062927815783069742814310907363159744172010043214941961935176791603921250085454102936917126214113873120405883118273636844903335000473865105148550590214462929117780405311499444885924770449779157142014006830224170685309315154438797997384633339817640551850145502452900467824909085498261391267709054450200313476628713250795473832792093350711410373115197160491274663551092524073340836221397352664353235247831158949819050115215290772010284539607969271690219902603821582657,24003425727589170532663869192322030538943945148822062399216337010945961427378027710524236529045097740008239529891693854573603730323074574387306355517555029571396270483790272731994105657673718134894396083438028861748333502807033025075738141563799251049728691667635160338770958887288469952328987442729682278796947289053518986771911122562542149441355230810099948748099507142060010177281487688268845292432759376770532767245812643377347484905682286529844081415426101824234408564247618590677966518836555327692461478356122297916534505785216531638872958168430321684571355170353352724268927780693184938724886624339722183259421,20030939948791694094921106997836532434578994294403521371501479100010836848962747077471607238761388497679145378822499150459403963802326636975589780084279335637070321781313502047027883154267014733038805978970710176410579107929485519779112034850622531520287022547371539439386174878773544830750041302618611105173361798826270784808992652396596786821436733488377837349284332001375201088424331364286550732742247150161681889289004480841207149941594126907534285607712061943572341899739867922754683103581617612214747009636033814762750497302268078808823665919929249386647148964298452596399586628310864464196272071720395192133489,26870132374951553243581913321377246229771795848056596419360924847337540300978229013002723427615100062690126686631934134732102152941473371391783556453709425066357685692036492637888980565254013131275256724381428020710512422112788440607830591932440438849890272166273212125255293837259298348084558313308788645038416611482549103781514142985867750527012906984385110191046837459757808864741583473057341019452578423080700589131792924736182910584032669431737863108910781465411300404077532371983623221078943741087750842713540302692591604785862604978245628364756611702919842339423052849035969584933072813435912401288087398604921,25781309885353513172762417920559862373653633766198016154431702305819993747433843312735651525316421555779956949217599915608247344211910767561492880228357017663462131839160610108626231391786518524635537763772771732022138542377442385539024671393136972077400774477946909998449518641822004119697621239956294809097040644518494643152713366295240127317300380586618659118989790014789381034410565903140125870883802621234783419468923863900036725871332435066935174631607488613764393382263135690909855298574769132391272005233712859895795189174927584736869111985784832037628893972777670733794612566699959726190117505644366934694141,31307948529511772422092081620376528723351660195178245630091738647550584183808045529448767036136429258045017880313805169530174754560039519751935200016137594525166410173049351154227454247975670642857061354284229524586536451868860885813714578893448403685065908393856455188372709054731049692863370865677701391460552630927498629863324809550335559817235997586126538332699529118621351625401581293898546298753212618743290610874832103267345624474884402930254336353399762494911879332332316505133643206864735435683656288655072941785814640312959405902536938955107787448304325831133755028455554235924936888965889253927315459519249,31466961232199038206393986199348595708256863299176374148227521484010795684260339468184532260347996789772040097386032241172658309499404470468218492541809815234208995118730337303514831281668817831605535229415260143432704661750281094187807328676322407373913844432440683972812394664524853699586055958635280164067281091412249301309251915772998531080870705450343112678791059297982033179252277552572737658097615320288170699408198262523087724946180097295208523307748556241283633289461565623961341136472687878275672606572269060361808996126027608464429012339688636176786148346418213288770613540923635302757146988963110333316781,23282315206683722596094270562333648753439051790898100314922005841725502497093211800334393760989042727597691714582193235713639238284172358062468387217727181092939568556559834956352385929118617242221861532950969685568622107078283773942779583910577282365015752267710687089071780861330758005577221151609134583129504364837341221471368611555190375227501319216183854908348755278500330379812379883892909358375120467449644585220805660246421673078936109889143381498767668445860590513918867961598096050612727306953235332046855083649560662539716078578551485777683734466740521988744140757231408246451261769915726695959921765032997,25091337650425677853684475917739333556784369056148930585749057080859640921803414967035499248336819782755466354804640016025044002503128223804670636762370700960312352761126598625504662989187540799606658080278007629478214427447535566556662347722562243890754037326739900472696108231869156013516647618154210840364364919089100138905499001603568088340085110153219085814807927945152975657929969505495173887189020701090313994816079981109190512102678874334588894915787220152560380696231794377692004958328931143825599595181025003997691503128188855105160353707735893011124272774335559316106266020514461879401833904958202494061001,23827659784682250604442454473547796888740733968924087692522596947210995569582513002946432005898923676155984614087332560259943866897650716815951119740918614656692843602108809220144973266843900928325168304104193270024169252614460073574472494366384192690720704949267653372513388389564250659367518167586555169618994627094576635848093242114762843534765611200879960614166650643590955853799316870443339993391685970472310294098785089036360647811365521892090305001153074254408707786436158648387047030717269669710808288303673434511182840032065481730245714970751088620360458026112893074508503440200554493648329036195258926190733],"H1j":[10024025457847388392610646066298514243370787348338532750631360639913721829629888261433439914402718667116400994500512300775136069581637894623537510481269716297031115527602912311323880048384727148486222115704187210174101029381357780998875764924841198846224052749406474209451141960414618133437662859572202780961023516801781475926753784006105642819239485607653090319392184244933555747381471676665633830261574288841173438644814600240117247473386184548108338325639763390271130259071021112922069642676901166841167199223435257080313456925802886649375691201308332777566495693037805296244451983094124223174758130752134991251259,5540062908155010932513159905564312164946355979316528931149460136278288806659772940588319017326328094974853633874382463976169195549392127817304835111543615409573476314059060881338397061412436243810139473181382772109210271463439624149555390649740374635589527762045108740275882849527695527198385706268316952416235237543464363519203592980469637771074904708426157233888490918907104014536294284692202685017252106362206847500376336741712522098586355602155374318553270307953934712780754034315941245597336144803859821983984428471938659224631751193248483706020880124594451403191977963618445462632103562894369717754678411970157,7294264017980791887588541945948527964732046841763268733085682296431903566128312881527716171471646888128877802321111011007465120561544014131687975703500639986893207003039277321438260744935109724584373350656877837682253991859961109267518971621013884413991023503512551591742311046398421527897782104779903020623974791981836764750802585775470044046719785755322826006147242995196401054126149520747563133877218253475355114168420889541015916952420416242677374123641966631897855997275959219115766326404348502491490713975699304986526310844436386187304302850704361098476666746013218735172029033252239873173053183420490728457969,9501218113444747046512167891740890620022448184208745016727575118910400114702536042272711158066289559244823855716406559728787015762712355980741317225927051706399078523944764818407725281098361563758658548109686452917704268397282493394145905917631338144130662786869889947744035847462163212831976185178442327943506290185820473986106267053867388409405767987475830498385924106417897644176202343305711004215516685101951487059182051580662118563531777396290757514364141633090265347173402382594862836539162320425532069699769291364183133350523773491418365804493761877536170212947415911627316964969637971056063543234131063060179,15798786414829945409990379475347092437191933825852017565866427461531342919124334651290935627606571949258216191049074056902849155877229528326934734579833314251986756112086465450838437292200045064209850028597082873902388658379469441564667669701765841537160309665720024332706155566138689213961078587239980763899119769146527020365437175547591597253422987241897416697834718145603044863506510817025716990741255205962477142190641478116356939618991137525950385435749637759382858607750867147376236491183474725313362128439752969796168290272602393139910089130691220986679844969299810559606706770072567820176650336982258175656069,9335293725151276608993402038690349490322365392613976918346481216796454921531989892317554215286413208524498017721329770260220214739976276463115767516661469141467987234112799014449837377419827917305931640946522287484467505347102693011074644574833321939291182991369361351550845549986196632347752029739003400876962371840702829213086378506709453044627207644282674209652698873675164479665879605315024759424379670463637654094152277916485019222649587458037242630015801094579916767996040360006216068355347853880839844214694922100092515535187976540400673364286904799817798092386690711558542096052961324458158162316849747049802,11928753658530568234030789407795275088740952723187227006977773559909074576164921817701724786519460916583196165018163510774039491890001017299531322520325627826211812869166690445989428530376091680807701566180854522056382923625327483414081231404244458202347765643506681512770879868073522880161513490523543914681148241833246281106290736532685240004675518845019764469048182810211653160870255293592651339935498048137995182398802459841631852186888112285076188858851763824315081771524248572039785549974159773606819792419731561145595921289694471859455550756883293661073453125644271107011011223441502328961618975292599286540534,3281434421303304451534752490245528887879239197847942017450979313729063086003376295872507109217827492860554007309921835555072782997029442232019030164252143769859146809734506916627953872016140383116721175515392391691229687480990552997729334078523811275423771755788388400181281035140972235710503768780977567025805917901565574387698038208089499892809008311004708551092635216129712077377038639345772519472468677180077197280667928734700336917165150723117546746441573171713790905181182966896063824517476166929486302044010896828146903022644169171194514314475627079949830761751962833520028060036397259454122764395181619471620,26798335028033483015595995885818313899416775173626251303214746152969095667991567148306665607431284548931904800914249634868412622200397325111043206330920355980127737464934048444736064518743501106031852408038680600709174828761299003903687195970226223339349891916494477088540593890862438659139800883091968208023580402075789145180476758769233643214633776274238005081673345069570155874633220460290011162900873068065044353387042255376321331197145839355270876626896209116281706932058419419985043694684968787877580180579063249938562059688827441196772120556845945709093021801017783532024267437712559776698525435075445312453530,24379152218258906482492311550879222904032299657142525355457269472724266562417862087603238266608926068245433152992105088073531452805187189356790567435332219230651301413762858849116755355885877930185483851669316692179467165059725168458003778120562044911094551614016767541895327106348965256725682881898632251239010971342586248735804355885933092854432575702106523584026168029150861398417670162335859972289331761535391135324650197244391340985538289280848512779115086784546807731473605687728417756436783747883720385660475468617431753857425268742613699673867257484976547014884809737803594445736805689004998882232608324939099,13639308363088689304499602606006748747737150113207488794697369879342136632158898637529348398215211110838650184450613858330095458701807309615170814350482223259077017423473614957663630359321153124867291328161758174033028972972743424022771180662104664036306205285576270109455984955077713540350117086087967860191108122028954920957836754439818988959156002918996099715859267715547983808966864149367592758343569651869960032231333418638792990340363087590766121964019626938526976202582697949104351928836667810574924696014475214582129919944765647849262874087078594478919124600690586319504349329877883243753775251538124197406468,20806324398112704184576243642308446225385834167758222047710915865491553221121456559290405385050181445190026351137186843498701962906728774890279265822922302262674344261443633266351787522423584433088856438680222017039801221837510594012303704942258177163584539612102842678739854493210477613035711103258550560273478479277362352841578985334600196007452719273341052878795457240578018430753780869150598290734861026318283861569123861098217259089119729724503263571923384603566241538064572968952230647186501970761685868678332574820155746476145383468962025352911125509572618602029024652380792594855032573631797517407433780124767,2984534567830588608251691688517562019886934976940239944296177755224193834812017598586976214786265618202828155437088641819872658344085523203617440122990791586663797768559098311449463943487720199704106941788760276946864277974792415345700942642550277726023952217616537482804161899962996481893200668973584167349538844293867619144628567178172496162265433563681342772983054368775009029385174850706677287569940753312983986212778939947598815595002848721076684937312652495527309505744053588382568512842786184034878250903582357463020880854201625144449160004603244837252628379531756302498757122746553391615927560808029960266625,19681285575282653686371866964026575635551812532880664611876190222601081859688141586553347439412758942096084877111883472375168961225184324383968489352875717670106440217006572540605411871630725641391171380023993395232691314662393923848318294382993540810449491616527524662991307157899373490742858664974644838212306475173795164847929404327886006104677091872987173592834296913553225843321065615965897920646645086083927169011172363123935140462214285019059726271437492418936191962060610764641005376370506280067258828239222704103600176916708092576268163001234852617058752894380793333304339677721072271552272594404600260363861,17663259858420311330651766819499911841067663794994694318257191199872170158137865025958007148817857781638492835306514771303332749042829120815317355608633338052028835394702531720709875380635913577846095483312528431723891955957026638053673584169905737554185634030129649039016018518994356839547241764882921390944931575304729587593422442361903863687010228628846862342208853396044641495867576785861723973159597871732538239253298128840563941065388954934551651787261972744712209405583851147359110032083949020208533161960188954813739180009449972293158373021060141688387818302891372350131649013502869609299334048318236045598871,5298970575809274629438935393989318057761764519542767586120836445032263316761487525811021815951911099884013107458570792999455520743412617129043815044943875968069243444902286481323598638834526377417104328855033745156522241109248831526582827196555064828920153555458318257230359794631019067306886747836486535385255549193636393132450664433886493509087281083390290568729201571601929480774638279112348846248022706481056446460853658284203145411150560753280109970030570227674159359532427547564201906120131477615407933400264643596572008335881981150704968737407428485573362254058660832170694074403410494545950595818012264895776,15913403370317249903846545253264583237445426368566054050873204733344285093615027647693061965382356514660489490017289737470216855339451599323161686141225364898734459213317143215419647354792387760477998230133600223913390244574171627679693591136928514907378143973333998319592583595882555481681002615976566590485876365765518571760268938260544608828017208378436062792581980653043467844284389159435925884731521336805223809049222649874552372676573497110509098941429212961378401761184902390250234585999298135037647853709390803265128558710383431672409386841314821848625953345836234945114508861921890833145094378447829164485787,2290909140884019351426250008814545735225813230804981825833168241438120125584365814035371010990772186759925886882837107545743421629040643022748869446583860483172598682089887676740059939878553272595424436357723367398096377972698494175572434136161599049698027302739164581483237687791238697379241703838109655701932792883820617202754352159209515775921392841098109717647668579384288444138762640166641466203925793570935398566304261495839675905915184706531257340555764797653386663178215604213661066377035729358506114543600757612373813217341582075351741934166661911856401287953329256496263459473595206461438549716253839581620,16642615813361835581230500131246118445590603247887791817817316273244438476256311337001611675388574331977410141699297630317377151836311293305027088331310025109780248001730816502531361314291505497281231329646213545390817348454790771602982974763540004526670479533111992035177312072478629306988622806347623090425003234077873805375141062348645927401285345899503907001825760439541705306585854742931882134500925066002906885338189163552908934604616236359806104007315451823167682352183241953279551520079950202231330492255621315016646701261669501844925563045252616708085163536257987840050252877140816998011230187115088535718084,16010347999096675182232092054526583890655342476048555695134478148077646319292254202928857709848426726687922101503995183630866920756294444357812738165670087524526688577215556076807546011943089084967115014780281986236650136100212790809186133722139336439667178800133917927993914606420172087843235000579778849526996068548810587854703520128067422195406060143205277668392537421614569464766336104310955572146529110182880365088792241394086157577886083440548786679580400292545275535505024808973895871707731827445166453079771165377996477241584002682623055073167645192536278061988188027824852844065261608054572024963829903461213],"H2j":[3368171208877966911054339907901878144315427177489764716664525147952589494997571345476952466465636584372230416806643927079294770772639785886747559841089671070120102511739419185926825275343129268693107584218806327021288882477748577914215697371729166784288283440868236399459954587383445757960644874348547417850473459042890356424271874499317095341286743556259239705095932387025485711185437452734962326711790258196775033662070121656155183933539103178989257156247756946175745703344908852193344259286268186560067884170926994359970521939453852919421341990972981960061011629945378288288327928173529860414633963687461741921536,21571995110918784658914871089233085747498481392093921476006031602493786671249981878215451382962183306832489322303548281716296137774931836883062638257871799588636736223841397596603236825079859053119441636830060533162035824030490541191082185733831191460351456499274515867869223195196735738841516139421749973183291711819985317821732516820314960505801684638233368245136026792456696584282458766742520555425925807015416047178765452538113430822668214923191463369535833443605844329620997852520039896259519774630621573507729397714725431894641714478634392952187074508209560077240054333035743202911738795412331854359778973195140,14361846248841354239738429614485615020817620015740214377557182447187161532145777460980697522328331383902906916852306307688790083451608130261350491455026208295552005757157547049806867066926847972162187184750531821995727255016828133897770613409484181886065535775699953909464798003780913388918153183011660224430464726560354626850573087079518001579497098985920611294338802921392907919446517107741456227975646401634963060678572780580998274987217038988195161229432595476488751730989311796958677066257365863948226172977171594831544011639884849989931328654207271418544321580100757601201270000125579606365984683036050427736901,3320303882237934822574723730249906877625782534310160672723504685750059065549780868692191634937564489497907122877469551544554741543440051593275714064385262048169355745443620314041833050794531307335253819559894664711581948933864857312882072901440293913927021712377972600011615454373450050526995352982830050256391443830850515525775497974669346917338799122924286263331475349263163070978610950486766234107397409979634217974050928014066919223534136219934067215088896161064759214148618049130963680983012705398939807692207987093138939884157043400363128971664499276483693036909962979142844998423058170845192989653278227244556,11392712315645310673556256100365181042182208368042016535682634838624439633464280578340353342992697843456486856323709208993769929825667198124843256857854149171724638555790573818365215224736100981973384410995558183533272266822358013891089919574254939818330873527463833155579817319890250882056946018928950519405481352273564274138745239339555689528027209630484474043328702633331977168775903350557929023233359205813047128230741363083482041365845075249319178793999005856778680811779083784522911420519825713738930903604514930432327435755406403484491228343075922083298289929463367612180095879814334515830338256256962304365507,16128185768089596194287119128971616467728481679140585100708821051566471323843047828854183726318833284371487280925375797724567335316422823058316454263458054143106806709907496680547056853651764349462358556329487313360470751830659004515085115085503406434144518308588359624087795942838829972724870214686385899497790143468039433972576851570857473482249444251166188717970319339154993972583107254198134043017660882069243167380269891894037618164535745069845632928065376946760432598515015966819900477155552863106379035709861023910264232532374352692943776001019180723682584987138149276551856921296644229421379331608912433891787,2216711622729147643119351601279604576561222476671706440839914460051282496368367881534683081378746937805707571316950268212663028051018612966825594397873907399847514954700788018713085783872783310865267981225782070802491186153117333152717062661110252994273036185050571252614763467112197381544773361260703440205625252670499456016034457927577251901944688698835868136916669160283880144324751412122403729270589464975875662168775295336481672192780137765587777958466322897160031233145485380452023766308429956773283861365366429753738225270634870302712702783980696520536919562785018253963272279772947237341901826167911636277398,14567981249611770119460797088791616882610277285940857160650608249425344206528691122331543913667869847178068077135905754757970717904714688019328854767805335556395966314263235325078374161755665460346725642944725762703818596015903905714083108502634334495870792846224658572820537006327415243377500340330706127007814008821793048336577227035431648149947100606065474813247441707074217050761365292856644845629066245995828609114930249956124849463230151850823327413055370077318181578457937246716760725440912216906628033172873929155794447444347775998977195569636526530564164070920144286322379557192066768871877841501668738723305,11562467842115790891804601373773643847126621903349499609152938962148770984937205728801191644445725158989276699296504193090664088648177394705510081647868491010141118677836328015755807190340752111789458182176683494843129204876774659319228937425442946958815453444622877125277511242659189800732695804577042735408856749044867603169231506434230337165888447884043777386886336176295745762185799165141571995448994795987563473269027183930075484844146542824749783851152327060411300732221330038342605240436682988238960554043191119742665518743299119772957848539797927531910599793668616983919654530567233469044356313491217598173963,14001988942247671750781482079375285966547579414294794319094213847379686940578167330959958747320137628734714588973465688779508774703004652572462868416321674738451567199004872420641775754108356291951642382728451341563463073268234897512437292991864411475522021623042299363078178084134670414407763213420631947305174457007699331702204294303015464925310244650403343929391594959891748515738314022772251420423895070351394216428634037166244804545860754313566530581379130190514697248618490807663014153146208137639940027271688234812971813570187637013722635079779830294526604514749212529717398437104564243590356265592707324430248,22660381208680529934440965587759859630365737502029115748369924654698991903261875827625444059798716389150600717053198039271991446052177985348107490095372700835812383361394955848974961135498980301472468398590372824927166661721168913896457190085269560320077063240744390945543298734163933076390800852847268723891846915780866370885782050245477056357544654583119258014409021504561016925378839878361190561580782875056594285065583655990468688145199834395357403106937935824760810934700883413929457207664342072543405193505090717688282434192414638239406093224709925453132516053056802277292184257441746331824932943075086343111278,20472030140330590554727016751322746521411547021589348812503605132754052870300345339453032427074737788538570891246727822818774891000538284023878268779231690147875265496447517546051987993131805558030308294615301233476549529141133753715149811029684466002817709334036803452074715441881335148948617848448549417354051160238759910288354822541817903899839091496273435021826344319441409806973908079330351993159801831003550379943098083992503486981995525990398355622285332802868604496636639655839747683821735810491234886789689703654299736502370849656509374303361111199544583501333765966424789805698080099714702838932727164170265,2453173651401016059883376082702788558595819343620938909718003743834761063920578770151771007440124157356829685449240956671627119096461094862434828440771694576875873539491082895345114445338009283914246401641276451109273726841868022516636570181871922631150553766823691471767095455577358060583652290109547591748476465162423200240371828509110384977101559949176482932811774533277255627251591525680337416653414697852938946477765739575989782561041133771451257557157756072849234217247160968445068150218106127891386897699168070200218755068578136094949985380806928006246790329032200529105916916706533850553672076045608730359951,24113152339438360498818613385483602121911555739122745946787379178133957345957135620586264478203421944425299426192146461629084303328006516447630615633641891356240907180660156167532682435848933370915136668244592305335752238307655218128679169067763462102575980085156721937439825798887974559139719995948680828470417607776837167245694714142889348485597791698351034577938495332154328968099025912022930753095015877561713107591709857548795164690012791766454787725487399290632750389338230767552797412606609844617222343058516288469384643892784348204522341997782682670665258025662990169755315957866286658684293611644496873215267,23048127989879822710411192866890144848102725506107457207672066933390327615164057701868652098516421397166175276204189099923035751642625511125320886106285613893278788342927698548384268560900735111168363954600824026890037073968715675372129633119593307084369015870114545021114363768521678984746381386414166722200844864695581741219036038918650136132423598216731404838838590398569938445014697553573715959930243891120229359688175340044395042982004999256741864583061848148945179825358319553305735497035945950407010348447423433336328707080153581767979294379351950056937128181379551873194994067035954630194182060875682649437666,13618893464695086149676203128264379703835247962620883770951238013108147463339903484787069986025297587613907750851693587285998342458273645890621629308654871877706080796956646324471034007240766614380367007821000885398439611969420081154359024999574164769946112634981576459912811818772491470799900760145047753530968995478407930477477944129573287306569838212654312701822189291272987922653156057983889008935259264244527455188704827518079129994488508788103513618119832400499449348458232904888661877972105894911067928574676593878643851258312142433749927142945806711403413926146774157545099025460329680057003565864119710344042,23894029291617241391144328899509691451082120805949912944383938437120322549284785238294999166576087704069349411280857670919349460489513399500828536265895125463653495907166485758411354581066514943080277665731467417672021474933030712874768858153808012182457456133833868682464778542510979705494991241834256525297885337509013426009068419788422403698033836643374538850826433098217327104341285009528115639746062522009884356634868057714134080806096522631119686584895158882950387390079669636785522392222833493980203199840117132536258676406629318977553433626720193118379634005263005358473104730141003648560474105109737111011794,8925336938516965008397109104514048184046286665452569746388287155124102463448431342748346308295582163969585477123381674515410213967775651281608577967919981280923720344420733336038269189964575637162708585549385406099462739524026684819607311522399446887121322482655436562521377082292558533779186792041587188361186852658931953312216304602575717772394803653647861926317392730789837892117863267885605817028617970756887793540591824273228108598874261690153175536884068161483807477696239392976829822163308261960542651335245650622440817598987961098884462409657203750437907285145610244236094931259734945402603438305753971150592,11949666259971918796589430623190075546810486453882961593114781232790528357171489136086300172564872735213582648459678932324553671446193373613445392996846768949427585353892225809922873734606473958012848905522095066153323414491640379067553063059327565094898320425802881846169782611727703042073646692303198048486923691657532734229486488161759607766287874080676488615866925028524263799527274261471472615111756048644281578781133899646868101860588922113737985515123939591333283772116702698675273675787772365936701715064375893211337204849804346824788133348904362412793959284749560448461044309070434592388006426231060171764771,22250566339370324059402215781976249391077086920660167269541657986285216346026428267640441435642495757683689137264020871118649281135403445710476580606390835296225377720486579495200200373576733192798872047011357659910138900430140520045889539388154712432007987497852789128001047310532391671755193946030519165629053752937739899959567496721448943588557458516035029605073085115080892712303741049416122614132971525567297514147438256957998569093867126816514230762539072531021367441808139154778858187018499802649090111006001230394761758788797026721593274233504527845651968558769656875733771044784061166465882679811351871629592],"BigXj":[{"Coords":[107932666477475802631511202367582748861519739569035537904969017494701526323818,27810089900979531039053592509940878404833992140356119628629019981009106058899]},{"Coords":[70488850009775279003934303461546816167586319901288720095232797816893086714940,21365158033407193885213404713050228625397820553043856269267720323259910113340]},{"Coords":[96704419145309517259142970140495022508494287400107594467439362232020961329299,76628584944766298203991062873793502752240767184659143342509677627090500089962]},{"Coords":[28019161860991754547254544009397503028608838172584402384170752184470432984674,108882834276696603625351040619123218095898824500661874818668494090573839581587]},{"Coords":[69854419615803608419512220164651266075688659942948825382651503385261699188382,86209865999364219341605400066204025416938700532196803014526015416182305901566]},{"Coords":[55707469940275855599640808250448173151230633312005616373715718152006593734016,71581471827456608524472614862044126332419275513283203837579704443605501341979]},{"Coords":[31537542564214197931115404850756486671358385103785295421162883744455005249506,31003647934233069190792056145926504346119044635106496026002117518163562078840]},{"Coords":[71459743938853567115182393388387842195822211722537627655935266215390092032802,105621264392663357649957909617094860377111556629887291515711877643951632476111]},{"Coords":[100170179262204638729042299933877814060918019584852761639094198183345507736585,28900877763089774489040863107152228045173480683157331262486804734772631569442]},{"Coords":[3393930126761759176345687233491451168543634500428196687848693751772795262696,55773871461934232294712308387072487465508923595028614508001564000526922809830]},{"Coords":[35436174997161384450863357581481493940397620545951968086180770941965008242533,22941476771782647278770334144010957938195504420883358055133977993491797250976]},{"Coords":[20742591764203230819083960194719627433799141307841650214987882235851644570480,36792680781195360005281832466704518433303594582044389944698351592636972852101]},{"Coords":[78822613167932563650341174247543824338627391764838115664582901884987316485415,29305611808246076472515388603014476455888609363718621630903671994111327870746]},{"Coords":[106662917025753316359017201639970683777210765763056751174154469380644107823988,38376047705320523688829546978146661452201839032747402442602961204420046730181]},{"Coords":[50131378328647772110850225682895027165473791107252577081428683178756073747030,6484525664721285218064077598136507537588284647694850022336064622644441747313]},{"Coords":[63814576207919556970263190432671978386229401573575575774195362165468317841987,52351921007743438678847732376277019290979039258214198300788054101141627584484]},{"Coords":[33074537919982031116943260590723731125144796968052633499149040111855190089892,52462876494517613825042650703891412581466209764861573326649361336309483684004]},{"Coords":[46337244846970653814521818706394664913446423803670640514811670889644615970917,60622380590936530234720907025041106487069869976400399621024354043945489694205]},{"Coords":[68932201886808999446322681662607675293176822755681592496851252047161893154617,102558540543641758967834783938704783088913683989892796677072783324191846467831]},{"Coords":[47093684301174743530406169926797075725911173707597448168332637736184121729220,74517549523358620639964596401882412428175945976473031695393603496712918162101]}],"PaillierPKs":[{"N":22709559588116531632086995360614881758145847958604375585917706994116168375700793376291131544827864145364687259129107134734036373558516565338923959924703156876435469021413354399418993619174071015237246272863140297401272631661028437511282301913323857011886496541494453371682094558243513835287198378640755589750985308457641295136946180231598093936765306071278862423297167033582450972276390473663053961764398615170355333807856718875047329620163477731845253445115727590642190491372191245975524943279344261890117425706855830582201691939059698357650223528988243289388677629074389631868130733940366531485671699566601163615661},{"N":23443957150234287781524191819714980056334495753799141564738532515877512840928595615570444488815473106829833471979932833846134743028112638013245259429585839683894162551870479232892081727695293106142145837752188330564435054323350976552725925455074206192778580457152750035194725712966851385101176362564718763658489874740341398176203077931510475924742361380746164713522692182335455005818339528332609035897638651762193188267900136476551393608916669622907100712471489443414455950510417300576764177277906265582678299980344888299166427651633758323734973558749488731824311505669417847053850760848940423643750519510719400853833},{"N":22287028689259504755807149120904050002396020193634043129060485604472139332057712093383073269246020913354970143960065213561811698182428208504100112877284663913440710058603853492628849020664094889598583038642474751945815658301741607940280803922553940685657785019086609257141579057485855668397778602262577280637009340765489166395694519909332104264865369924039797553524566502151933416185073911748303993059047774791584591703105106437459703251723998725467328206119091524784524659754164199098692948259716816125731645175450298738430174307931086107554346505367596601043514472572775722114263120820933996056766066990263737006037},{"N":21778455942403717802437188616130445569467912356333711523204106321468333958250985526522676150458521139952234508699903096368286173136552336834061186195705878795885628080532376972447127537374960052755412900354192740274699607194495256559382391407619506149746521336051948176770581697936379025338953179299724284866217851767053361169462746892201032000776732741861429352495405542992367041691709412944529198233031428083828538853890568987466209820731450551650370292813109604532198408719181905952928419308306626664706489746484860069309396704199131581338218405332252354539932883923534658047809067343949198229794022084007329008301},{"N":29488834801717020514549557511738862835006604218586783270956635930974777840977382736818004943434492491272083417763033198615963445455042431681833978353867438176815774128330303688651059852719975859250721567522453513175104614385098138081209372251486732213899964978141377939387124226524201851559541320231331748973500724292675746395999336271645347092285737228923411234511145980962423027637945866866145915490526131803713409632083226573065035861386075817821231913413262072294132940186959486615122177174171466978866072639941945123654758187894442697758141328636666389957637295324259708835849664958476600091423260629670847006421},{"N":25268781854018641821625117526035412649921406362359871346957405856614663043063881662682001256500050697385215601589085313282671061645985003913281457834036290368462929918763869754871955608135979298238482437377851913552755913815405018774915484866488142406303297444296659799278477225336231564636195441498040062964451813900346208766721654100661710718867197194733579941984196715209521167970358227552984230489600141394198144474928084583860744656840175887777161454380202188440178263993042579519816969496156562013371732648143667185817225623397113488180419930136011024805515953457443050643425221010148081098971618629282508806153},{"N":24077030535873838147372990238338423111894661719881851208383511932936303788667059523325649062922462968249640702042151293306587810036594125879862518141403476609262478705296844024060273562609291573351215091787555942245982552314643486135981274381916357213038852978171063476276539384812002232533351978097782562939609101707149234139391638125337919614533689982228496010017193463462456934753130533077727108799001253943486336718218272844533405886783727956436625979626270665501149887064412642510585330023269746464208739229956710668053204092869919317416558618819105166451453240320574158658174090376334547079951345889147202424197},{"N":24121210025310295136286367465067731861316363403302816495348899075683542883649267862423504534408270521528934904000166037695519824119622953526124849500602533136680339478221010232315859804261374907195769559713293619918530079931895046819311703445607618111244570268187554380693098539122537784889700313005700764528116670706472264450599583329582635827622249925780628859318211609939169828662135675938640346560681426019582628979275573701346775265344080547061237809761964885298244705276139799178175782218409921284339726928435810584460742981474010807766522632224843035722465220411812727073796692626221078545796203402892726398073},{"N":26956782591324520026471701264974010002551430844929064558517606333109244333104364565707985261498791802440691867651722784210280888161145432103606824079477489895607158911928686613189674072708812330140444741131333062722881890279580684791181148664415766399323289281546841599984936640417820094077391333063403828290767644884268872176714175866593843027335088472731880830448148161449695591865312724115778446298294191846018327598860718546463796845910458753293225328770367785304521228332493000905274903063796918859478998380272311510096333363160486944174426731511854410356169028732110892177884127982236790065871058497952170624401},{"N":26249557760815986852034237905417683014048371748204856284575862917968310785883486514046189771449794410062311941320778404041317694258818896788913080156960590072834802977027251267292982532721343074208805165986815554608059680417209847673748867108719737464989377176319950884300513507127044766841349776517208994115342645229445634306184178062065483947743824551463650982111893910449653832587022792656303977671598375329018430362166017195461057586254287305421091325058340750141735758488815547176349755224428765382123772435956499576803085012124378000542928725389368171404677133866847871236251441021957443853014282022367009685861},{"N":29234737641692976595774236923019314216135921756073342884203680618120226690739166288052322806435356115092650761656136403373733697692050475566331202817414926309882834844059857181882811689758047525443057988160495074334079542319370840285641441603178202467820462588826229922786870937847036888109767951604636584098102615282750014508387427358079100450062680715472456836097388046216848854107984658532128468648705497171277133763535425127577293318939184956565230142817502839346792604559307183239212332206857888330805061669830296766718735240517983609617995793272006065303892130080909658027060291496416496673503247698087863812741},{"N":23656386949781378983561509210223997485938600678969404520355733863050336777307520388106184053630795530040934267843013912848246799628076757878172461266778291537251825140340096706161543161977283845709058224884977213986434571463756330276479208682952096086332163009127424608568458165322976353036562065434426650045708578336603634894217912009997772105108262453019882143577371634194078714264992380438885990335741008955488808069468796086801023973076920357953123958081822096146124559004458043648352764252390085772923647155984579633692639191141425745475545839873632550694666801559519849238477058285069280151324843991596401646381},{"N":23799985430892428550287426639163393896421663100337917557737015159273107046495772196531619480943457572757018895004491581880198797117841320493538657520011738472038586707181276745476787089472101888983238214242261897466709975139313526918983914349699164310009561585851364405464439780111046692215844366708075439030620693316351016954915727063684631173044817825576871464988585229583331260702104268887569088888141481975510438061934915565917441018736997897082388887244599485050548831301667982348795441755679549415459512278548728977097478254566801983960996625453970296380670902503277224729081061542066926552900097298958795919921},{"N":23398981485141581657111580810187356464859260220476400872431878471724619284703169207796437272649895475435460945312990810473873577007856956495840504596329080928974891464665270653430872926713471055976901497303072174459471872022720981442223753911960555794844008812776454183058593769792366230853507105586338576934054995838272457499054915439455088496111012971850904735289245691042597216634196809202787360353382667100073960437339209464655220130141692780283364216457426778903461083049390591667885095066567970867147659207581183606534554025283663685502553767113396678790806758816850832944906936477595076662914396730813902861273},{"N":24645804484208008107774215519843481629641338685651268289287772114412526440944111199969614165736177320304962312701073205538949325003439610780511806547845684862319242490345551374064725883323450769869814834613757570218276860284970150303912936880248283750218053176729988470901025014948637258535944241625099061769802348376561541469733700398108049774899180411488580995483844861534070436865153589414051441506488195269353530135159150725450897767102214976100194473384482425657735122085724544900424323758582364844065404991831422328546732900258700279735848044809564185617079126240413557300335393565946088211107690073344594774029},{"N":23664465666512928010084076006211208070039097235865486451752383277009646489200010451773766854885315852604650109050180997494686499532996982524560956955784208153283884502900612829692080614937231941501430129101050170848135543483642879522140453631883679490750446245717832265221232589489474380464199065201167874127465810334527670252907568617820949350516778153996202871756067806159248004814563340677682071536108582393686279672503548392243690499337315202892692273695083478754736347613219568092769421161385508903701795824994052294039246344316342377047969959511601521901736714883097032290625287691937066549723767146291790114657},{"N":22165609813091667259068375406991183583538522584875908765309739098448534648989953434651686788146626220283972510122914357995219529654582068510398362007031593307847827533082059785375352080923687640731375327188268078188971415753864060723639564145551626769223269559344648109409611860616931934210627553354435590764505138165455042290624193631088250055962033560484870481238850988856340320616852463026890656813658017413542014132396994215496811530247375977104307808133564653689276479112825279061966541271092780066027501498091088819663615972345385914896991989394778860649710938578818683661928070093400675043514978345177529652389},{"N":24352137164919775060505902875895344669551891343219870713119659495462675754712808458066602996522267529841963340495194383402601416044030073771848283771276922546693343786778909195920195728052430645791682092298169597213540403251589258864324656830830912032021695409682689693414793104678019843226941004344886835923010707685858497420014814885662783481710790760565625597934856999445792014460533464855807508832344902590088930105318969772303090927340774137226985715726042801943592444113021856673268564036683304420372700405680896320106848396385562893886698977710031223312091933030330629827691164100994176634674536649129152931477},{"N":24388425323514301995345880181969195093222141730097776998750148283180811486102209130079655780738706237274584643472954914248041737365215477795339570700387683883122567928523036945799350046333477704674538444513982433086664207664876244841911099162128315338715496189423824903190803189243082722638413039421880070666657272413079871744422617706188003161639646693501252928939859937588136677607569634910081471599993513483449765647227570734163189729311880395414909879933139619835138785852476313690881562300854512419432999005203281002911021482679309149225773391703345476483158302622073477221903694296256566718995262186459619480089},{"N":21604728584405813409256303272593334134333518895675489098410576803850613670962405878762275711641486977471395420657043551402890823783906820971712770494973201278527635005537714974340519544361402189093858595896231890523544098157276831993549216761475195055251372273062282101577640320665049775934814411518181030603401788639796770568692007642464803606076672769360069701571162199680486773757848273630254180550410784187377722267755203781450486589090106764541644204842436002216866597611146281471192249537747681020939314396157603364418120170135828923470079746789793341042476885118587449440114091973976013051496269141578521399429}],"ECDSAPub":{"Coords":[82191134404558877049244897640959846424169542769967270904890689024123037541855,102677683688073592669768840687667774566029618427936181452214529135934890152533]}} \ No newline at end of file diff --git a/test/_fixtures/keygen_data_12.json b/test/_fixtures/keygen_data_12.json deleted file mode 100644 index 89a2fee4..00000000 --- a/test/_fixtures/keygen_data_12.json +++ /dev/null @@ -1 +0,0 @@ -{"PaillierSK":{"N":23799985430892428550287426639163393896421663100337917557737015159273107046495772196531619480943457572757018895004491581880198797117841320493538657520011738472038586707181276745476787089472101888983238214242261897466709975139313526918983914349699164310009561585851364405464439780111046692215844366708075439030620693316351016954915727063684631173044817825576871464988585229583331260702104268887569088888141481975510438061934915565917441018736997897082388887244599485050548831301667982348795441755679549415459512278548728977097478254566801983960996625453970296380670902503277224729081061542066926552900097298958795919921,"LambdaN":11899992715446214275143713319581696948210831550168958778868507579636553523247886098265809740471728786378509447502245790940099398558920660246769328760005869236019293353590638372738393544736050944491619107121130948733354987569656763459491957174849582155004780792925682202732219890055523346107922183354037719515155908089585817238358334834166322813847027901293595697901445247014097704375892632777574622818816226708052601329898902312616118737605771277874759127529533594126501355154147705299245910499139518281769886131949198772459405117570566939214400242179458780459936051117747384633377814656678818924548201743651996685946,"PhiN":23799985430892428550287426639163393896421663100337917557737015159273107046495772196531619480943457572757018895004491581880198797117841320493538657520011738472038586707181276745476787089472101888983238214242261897466709975139313526918983914349699164310009561585851364405464439780111046692215844366708075439030311816179171634476716669668332645627694055802587191395802890494028195408751785265555149245637632453416105202659797804625232237475211542555749518255059067188253002710308295410598491820998279036563539772263898397544918810235141133878428800484358917560919872102235494769266755629313357637849096403487303993371892},"NTildei":20030939948791694094921106997836532434578994294403521371501479100010836848962747077471607238761388497679145378822499150459403963802326636975589780084279335637070321781313502047027883154267014733038805978970710176410579107929485519779112034850622531520287022547371539439386174878773544830750041302618611105173361798826270784808992652396596786821436733488377837349284332001375201088424331364286550732742247150161681889289004480841207149941594126907534285607712061943572341899739867922754683103581617612214747009636033814762750497302268078808823665919929249386647148964298452596399586628310864464196272071720395192133489,"H1i":2984534567830588608251691688517562019886934976940239944296177755224193834812017598586976214786265618202828155437088641819872658344085523203617440122990791586663797768559098311449463943487720199704106941788760276946864277974792415345700942642550277726023952217616537482804161899962996481893200668973584167349538844293867619144628567178172496162265433563681342772983054368775009029385174850706677287569940753312983986212778939947598815595002848721076684937312652495527309505744053588382568512842786184034878250903582357463020880854201625144449160004603244837252628379531756302498757122746553391615927560808029960266625,"H2i":2453173651401016059883376082702788558595819343620938909718003743834761063920578770151771007440124157356829685449240956671627119096461094862434828440771694576875873539491082895345114445338009283914246401641276451109273726841868022516636570181871922631150553766823691471767095455577358060583652290109547591748476465162423200240371828509110384977101559949176482932811774533277255627251591525680337416653414697852938946477765739575989782561041133771451257557157756072849234217247160968445068150218106127891386897699168070200218755068578136094949985380806928006246790329032200529105916916706533850553672076045608730359951,"Alpha":14301442625923776703581065083220814701970765859654085673815735219703584850791467849772631984286540948496815241066457245642917240661705722170066308400344980968641182736271065272659325448399386595820181727703990397317357817827782817758866702317067691075311203857486445140901552785676773956696358043590819197049459426936343077385886532991891108592046797502413647922273579742241937067302968905760876445156670340817277013754272973829519231303783336257924545530650969813850199899606757178236158373953861208425208443220458195005719326024763280061352511792849190103859832853377303968127999963815387505688978081764875897838045,"Beta":278624483192703201731200236462678248403070851349105953185444346212015295823764577893752392662927548342086351774037435172928173204457714746802312538194121228834863169834247888475190762572599287082732117040113952834697232879996490330250228889975977940138922769495538479951153963165903193985606611882752916332492667685359190366903531223980333148882558896296905135642556134686027356539870765609311017854508251375146077256061063497929288779766340871064050397940163816186097878157172801621177880698228402913123153166688175736385573215386391883144116125834644610207736590359997082240840424710063895858307102883270611192517,"P":67461358694026598460574344182422391479544757226226077595800492428868433626326452551912200754237456973730069229624942679074757205595112361480639958135885336110412911860773810822364981778748305940744138575599936521946021303161780975823529502207587684139181583455275955826723352470128598192719328246906677825681,"Q":74231161129005485860331953584219535780982769441248447947723603837192028764173698473587457671274331709777254151435752774106131931721613973896726107676957331020018094985658515629889098460444705074222630395845177534895014962981707364639708224968688151707866470321444219108636760296541053016319345252179275001901,"Xi":73381730474760788040914564086685209655260031878595375159662065868454346520125,"ShareID":70024534756929667616115849317753032895580033020239899587896153938577578972761,"Ks":[70024534756929667616115849317753032895580033020239899587896153938577578972749,70024534756929667616115849317753032895580033020239899587896153938577578972750,70024534756929667616115849317753032895580033020239899587896153938577578972751,70024534756929667616115849317753032895580033020239899587896153938577578972752,70024534756929667616115849317753032895580033020239899587896153938577578972753,70024534756929667616115849317753032895580033020239899587896153938577578972754,70024534756929667616115849317753032895580033020239899587896153938577578972755,70024534756929667616115849317753032895580033020239899587896153938577578972756,70024534756929667616115849317753032895580033020239899587896153938577578972757,70024534756929667616115849317753032895580033020239899587896153938577578972758,70024534756929667616115849317753032895580033020239899587896153938577578972759,70024534756929667616115849317753032895580033020239899587896153938577578972760,70024534756929667616115849317753032895580033020239899587896153938577578972761,70024534756929667616115849317753032895580033020239899587896153938577578972762,70024534756929667616115849317753032895580033020239899587896153938577578972763,70024534756929667616115849317753032895580033020239899587896153938577578972764,70024534756929667616115849317753032895580033020239899587896153938577578972765,70024534756929667616115849317753032895580033020239899587896153938577578972766,70024534756929667616115849317753032895580033020239899587896153938577578972767,70024534756929667616115849317753032895580033020239899587896153938577578972768],"NTildej":[24366917239515824974480442558600034492208859976504581465004349103795399783288421050831073024860369440303795551299953821996018530997630686285237603133194573622718124597460737572013930327249120648302190449742363261573076443183981343509885970573178298207488759436277685910850783372123719807298277837194569211839837465137044422691734879346883675317045008891659749391963717253895556693016508386391015178130161988317310806894350108084212611277788190739249760699147435109968242744158314817905689533615803297627887736048945645075792686416602832677541152918424023805280241226851534199867283487943291927564365275467582581271053,24760645214372673899925400730945520473062951341429554908754617530444794660401836428698520741646966955149111758288194803110363170964340801072472223878272430220722034553855593944561986134993071918255771235073978495918874383067260043443905506152815841034811512510858407909698555608803009379935760654878372301870950275270724586431009354962811874333750886958869738872804882633350285507993032763679234057221556156642769183354423672540429587887851343483914923600996425040023829456198369968692844034517720322057627565080062766276792221145223750390964637842847390939964073972850018793739320669513533403812272268817559996728177,24335507174653830446370401218472354012341984065893977351232759664219171991998539382418393419142907217562914494098827810315198583692551476438232634594991137003295122745831430159532586451010818106345725278793436836406022036374386618877645773128457664942790386603953998246404350465143928182109615440037926218085391564421745517307996722808502413850991173460229650178023548969664557299385141472097112836353938598657235574893430259143862369227601052831476146199261368117297723539373329843815951236997008000605506966102265798289158763516254914284024816124992986001907541315389832578466014006010753144367487203071067653140017,25353120959776139123294155818546513426444543204238814947681743626639583989194265533184090862296087842527526282860965927846515276605818147773016966742984780344247645856238734726222917730082852005118152200740071409410429096265046046476115230269737050878141459099734884888260830179970728221214610731604157017545322535971152193773221758709395769765431078738204491094323008301356895841037132747444047830530409305765562694358003007195242702308043142399969256485870876259711230128209178441443167004632638027691911658424285106297785382963002590496015895572427776988235599297735903480964253948429971597628412447354914215359401,29849885402332341621158797110436829396646924395042456662853244309209629024048299162272105169817115314715561658954210859089958590864101117136365470947498907594068557026997249170993874294161892140147876022164668279854630146959174794473879294364568105935870579392660025720467645329300426773479121856766502569984218591054914763859996476236063750210092775547343099066989888106146219058807079888624162205626100491953381078296178689026680702514982189001052448223393538379392778307314168895065497502603308074595916000270844935723623383768691838356870704054233137068509668072099435779943491520206735659166266930856700483211181,24303346306264095483727907643814355785838936488512300414348142784703917728792656928355740144163123550572150171398192480623395181408570425672723511597546032812698562984141032629389936754449924613948711482870260420456913877526422469201798411517711928654451945040790337077196569240216228957228264615761147375423719114756511538399142649755527243797217920772594702713281103939163745422429156605226253637010451757984598979666631182977221341184990723224510127460146263007980086670575857365789365543477249518437176817144448210584125518855115672157465775432933601089465408090382773104140011964681476656187299047937685144419517,22663176204438991528847068755997123453980704364589354833944958947785385672266299429364336994892902925142195136026995771544990684289261678272550855925683439714148609523477977179010696117909805695701859018966669150739407573082987363056991238107146673103957237104655136409343763639221993038484198677605284199701204669351878989982962102150055730219424526668206392140254467740757469800556697236694088468633665970603098311956910105499246381935436511205439918717236853087415401432056630404175846159692661637004967185601880460514710913037913825633119857629058574151126418040291146967097319384900092639447317903904481362864461,22214406206988221120543596573138808869312423548073528052574227838235500966558488375856182495656208729058219131190228351185002058116343873479198633895772314072671413818939926736318457089940649635331152484030046857163634723835906012553106874988855844579826872824922610248380139635284283310239564378546105159549071234915504686574306652852285495484227675227079507874801353534124836509674143920296971261218965184384289987323806590503991373066703353411925035343072343417173322682200148341574699074894310006001608609036165489022667366737175975429277190015768847957906950063130121905159960720849686267420829596753652148430921,26992054981062895613627607261766199835432715284801801749398907129229048796737348701447929605174559094984645968238323112325575430714478210726667128296579144479334211667227791506349731191531989884599385537951555136889431648507040431760656554949203843341649040209953028348323032563665739842658324687215759862340780391326904566525914822596715715051383829453805370490781186878600411802395931887164480044180689343432959074712196207660797594065685195126347713904229309636698471250350144098081500570797555478540127343168177689831999672573508345263924360426808488416307292793876390765153143370885661040432948994217496537757037,26883601429347938201866566412436359463282736845136879263977010812101340295160083165177085686402734295128738223195845941394861534416081222492334460738589328436684156816061652087254848610272225814333318089300032442695939753398569200283276971829978683842747584203047240258517693679059389343721225356421724973291878661622168915849085533925700422984364421907650824486413330797840743205222070155228532990351439410717713883609930796830287062705670943579996135308824473851899048361474382520461452309816639861239026761274994745411785747289015653392872405877863169928875880404134872170564729075194783267248873823339090853461089,26675898204441883357756938810501612911006923314113656530850642169244358619346060171584915468088311545710004060513299980257359925141562861692364285790755062927815783069742814310907363159744172010043214941961935176791603921250085454102936917126214113873120405883118273636844903335000473865105148550590214462929117780405311499444885924770449779157142014006830224170685309315154438797997384633339817640551850145502452900467824909085498261391267709054450200313476628713250795473832792093350711410373115197160491274663551092524073340836221397352664353235247831158949819050115215290772010284539607969271690219902603821582657,24003425727589170532663869192322030538943945148822062399216337010945961427378027710524236529045097740008239529891693854573603730323074574387306355517555029571396270483790272731994105657673718134894396083438028861748333502807033025075738141563799251049728691667635160338770958887288469952328987442729682278796947289053518986771911122562542149441355230810099948748099507142060010177281487688268845292432759376770532767245812643377347484905682286529844081415426101824234408564247618590677966518836555327692461478356122297916534505785216531638872958168430321684571355170353352724268927780693184938724886624339722183259421,20030939948791694094921106997836532434578994294403521371501479100010836848962747077471607238761388497679145378822499150459403963802326636975589780084279335637070321781313502047027883154267014733038805978970710176410579107929485519779112034850622531520287022547371539439386174878773544830750041302618611105173361798826270784808992652396596786821436733488377837349284332001375201088424331364286550732742247150161681889289004480841207149941594126907534285607712061943572341899739867922754683103581617612214747009636033814762750497302268078808823665919929249386647148964298452596399586628310864464196272071720395192133489,26870132374951553243581913321377246229771795848056596419360924847337540300978229013002723427615100062690126686631934134732102152941473371391783556453709425066357685692036492637888980565254013131275256724381428020710512422112788440607830591932440438849890272166273212125255293837259298348084558313308788645038416611482549103781514142985867750527012906984385110191046837459757808864741583473057341019452578423080700589131792924736182910584032669431737863108910781465411300404077532371983623221078943741087750842713540302692591604785862604978245628364756611702919842339423052849035969584933072813435912401288087398604921,25781309885353513172762417920559862373653633766198016154431702305819993747433843312735651525316421555779956949217599915608247344211910767561492880228357017663462131839160610108626231391786518524635537763772771732022138542377442385539024671393136972077400774477946909998449518641822004119697621239956294809097040644518494643152713366295240127317300380586618659118989790014789381034410565903140125870883802621234783419468923863900036725871332435066935174631607488613764393382263135690909855298574769132391272005233712859895795189174927584736869111985784832037628893972777670733794612566699959726190117505644366934694141,31307948529511772422092081620376528723351660195178245630091738647550584183808045529448767036136429258045017880313805169530174754560039519751935200016137594525166410173049351154227454247975670642857061354284229524586536451868860885813714578893448403685065908393856455188372709054731049692863370865677701391460552630927498629863324809550335559817235997586126538332699529118621351625401581293898546298753212618743290610874832103267345624474884402930254336353399762494911879332332316505133643206864735435683656288655072941785814640312959405902536938955107787448304325831133755028455554235924936888965889253927315459519249,31466961232199038206393986199348595708256863299176374148227521484010795684260339468184532260347996789772040097386032241172658309499404470468218492541809815234208995118730337303514831281668817831605535229415260143432704661750281094187807328676322407373913844432440683972812394664524853699586055958635280164067281091412249301309251915772998531080870705450343112678791059297982033179252277552572737658097615320288170699408198262523087724946180097295208523307748556241283633289461565623961341136472687878275672606572269060361808996126027608464429012339688636176786148346418213288770613540923635302757146988963110333316781,23282315206683722596094270562333648753439051790898100314922005841725502497093211800334393760989042727597691714582193235713639238284172358062468387217727181092939568556559834956352385929118617242221861532950969685568622107078283773942779583910577282365015752267710687089071780861330758005577221151609134583129504364837341221471368611555190375227501319216183854908348755278500330379812379883892909358375120467449644585220805660246421673078936109889143381498767668445860590513918867961598096050612727306953235332046855083649560662539716078578551485777683734466740521988744140757231408246451261769915726695959921765032997,25091337650425677853684475917739333556784369056148930585749057080859640921803414967035499248336819782755466354804640016025044002503128223804670636762370700960312352761126598625504662989187540799606658080278007629478214427447535566556662347722562243890754037326739900472696108231869156013516647618154210840364364919089100138905499001603568088340085110153219085814807927945152975657929969505495173887189020701090313994816079981109190512102678874334588894915787220152560380696231794377692004958328931143825599595181025003997691503128188855105160353707735893011124272774335559316106266020514461879401833904958202494061001,23827659784682250604442454473547796888740733968924087692522596947210995569582513002946432005898923676155984614087332560259943866897650716815951119740918614656692843602108809220144973266843900928325168304104193270024169252614460073574472494366384192690720704949267653372513388389564250659367518167586555169618994627094576635848093242114762843534765611200879960614166650643590955853799316870443339993391685970472310294098785089036360647811365521892090305001153074254408707786436158648387047030717269669710808288303673434511182840032065481730245714970751088620360458026112893074508503440200554493648329036195258926190733],"H1j":[10024025457847388392610646066298514243370787348338532750631360639913721829629888261433439914402718667116400994500512300775136069581637894623537510481269716297031115527602912311323880048384727148486222115704187210174101029381357780998875764924841198846224052749406474209451141960414618133437662859572202780961023516801781475926753784006105642819239485607653090319392184244933555747381471676665633830261574288841173438644814600240117247473386184548108338325639763390271130259071021112922069642676901166841167199223435257080313456925802886649375691201308332777566495693037805296244451983094124223174758130752134991251259,5540062908155010932513159905564312164946355979316528931149460136278288806659772940588319017326328094974853633874382463976169195549392127817304835111543615409573476314059060881338397061412436243810139473181382772109210271463439624149555390649740374635589527762045108740275882849527695527198385706268316952416235237543464363519203592980469637771074904708426157233888490918907104014536294284692202685017252106362206847500376336741712522098586355602155374318553270307953934712780754034315941245597336144803859821983984428471938659224631751193248483706020880124594451403191977963618445462632103562894369717754678411970157,7294264017980791887588541945948527964732046841763268733085682296431903566128312881527716171471646888128877802321111011007465120561544014131687975703500639986893207003039277321438260744935109724584373350656877837682253991859961109267518971621013884413991023503512551591742311046398421527897782104779903020623974791981836764750802585775470044046719785755322826006147242995196401054126149520747563133877218253475355114168420889541015916952420416242677374123641966631897855997275959219115766326404348502491490713975699304986526310844436386187304302850704361098476666746013218735172029033252239873173053183420490728457969,9501218113444747046512167891740890620022448184208745016727575118910400114702536042272711158066289559244823855716406559728787015762712355980741317225927051706399078523944764818407725281098361563758658548109686452917704268397282493394145905917631338144130662786869889947744035847462163212831976185178442327943506290185820473986106267053867388409405767987475830498385924106417897644176202343305711004215516685101951487059182051580662118563531777396290757514364141633090265347173402382594862836539162320425532069699769291364183133350523773491418365804493761877536170212947415911627316964969637971056063543234131063060179,15798786414829945409990379475347092437191933825852017565866427461531342919124334651290935627606571949258216191049074056902849155877229528326934734579833314251986756112086465450838437292200045064209850028597082873902388658379469441564667669701765841537160309665720024332706155566138689213961078587239980763899119769146527020365437175547591597253422987241897416697834718145603044863506510817025716990741255205962477142190641478116356939618991137525950385435749637759382858607750867147376236491183474725313362128439752969796168290272602393139910089130691220986679844969299810559606706770072567820176650336982258175656069,9335293725151276608993402038690349490322365392613976918346481216796454921531989892317554215286413208524498017721329770260220214739976276463115767516661469141467987234112799014449837377419827917305931640946522287484467505347102693011074644574833321939291182991369361351550845549986196632347752029739003400876962371840702829213086378506709453044627207644282674209652698873675164479665879605315024759424379670463637654094152277916485019222649587458037242630015801094579916767996040360006216068355347853880839844214694922100092515535187976540400673364286904799817798092386690711558542096052961324458158162316849747049802,11928753658530568234030789407795275088740952723187227006977773559909074576164921817701724786519460916583196165018163510774039491890001017299531322520325627826211812869166690445989428530376091680807701566180854522056382923625327483414081231404244458202347765643506681512770879868073522880161513490523543914681148241833246281106290736532685240004675518845019764469048182810211653160870255293592651339935498048137995182398802459841631852186888112285076188858851763824315081771524248572039785549974159773606819792419731561145595921289694471859455550756883293661073453125644271107011011223441502328961618975292599286540534,3281434421303304451534752490245528887879239197847942017450979313729063086003376295872507109217827492860554007309921835555072782997029442232019030164252143769859146809734506916627953872016140383116721175515392391691229687480990552997729334078523811275423771755788388400181281035140972235710503768780977567025805917901565574387698038208089499892809008311004708551092635216129712077377038639345772519472468677180077197280667928734700336917165150723117546746441573171713790905181182966896063824517476166929486302044010896828146903022644169171194514314475627079949830761751962833520028060036397259454122764395181619471620,26798335028033483015595995885818313899416775173626251303214746152969095667991567148306665607431284548931904800914249634868412622200397325111043206330920355980127737464934048444736064518743501106031852408038680600709174828761299003903687195970226223339349891916494477088540593890862438659139800883091968208023580402075789145180476758769233643214633776274238005081673345069570155874633220460290011162900873068065044353387042255376321331197145839355270876626896209116281706932058419419985043694684968787877580180579063249938562059688827441196772120556845945709093021801017783532024267437712559776698525435075445312453530,24379152218258906482492311550879222904032299657142525355457269472724266562417862087603238266608926068245433152992105088073531452805187189356790567435332219230651301413762858849116755355885877930185483851669316692179467165059725168458003778120562044911094551614016767541895327106348965256725682881898632251239010971342586248735804355885933092854432575702106523584026168029150861398417670162335859972289331761535391135324650197244391340985538289280848512779115086784546807731473605687728417756436783747883720385660475468617431753857425268742613699673867257484976547014884809737803594445736805689004998882232608324939099,13639308363088689304499602606006748747737150113207488794697369879342136632158898637529348398215211110838650184450613858330095458701807309615170814350482223259077017423473614957663630359321153124867291328161758174033028972972743424022771180662104664036306205285576270109455984955077713540350117086087967860191108122028954920957836754439818988959156002918996099715859267715547983808966864149367592758343569651869960032231333418638792990340363087590766121964019626938526976202582697949104351928836667810574924696014475214582129919944765647849262874087078594478919124600690586319504349329877883243753775251538124197406468,20806324398112704184576243642308446225385834167758222047710915865491553221121456559290405385050181445190026351137186843498701962906728774890279265822922302262674344261443633266351787522423584433088856438680222017039801221837510594012303704942258177163584539612102842678739854493210477613035711103258550560273478479277362352841578985334600196007452719273341052878795457240578018430753780869150598290734861026318283861569123861098217259089119729724503263571923384603566241538064572968952230647186501970761685868678332574820155746476145383468962025352911125509572618602029024652380792594855032573631797517407433780124767,2984534567830588608251691688517562019886934976940239944296177755224193834812017598586976214786265618202828155437088641819872658344085523203617440122990791586663797768559098311449463943487720199704106941788760276946864277974792415345700942642550277726023952217616537482804161899962996481893200668973584167349538844293867619144628567178172496162265433563681342772983054368775009029385174850706677287569940753312983986212778939947598815595002848721076684937312652495527309505744053588382568512842786184034878250903582357463020880854201625144449160004603244837252628379531756302498757122746553391615927560808029960266625,19681285575282653686371866964026575635551812532880664611876190222601081859688141586553347439412758942096084877111883472375168961225184324383968489352875717670106440217006572540605411871630725641391171380023993395232691314662393923848318294382993540810449491616527524662991307157899373490742858664974644838212306475173795164847929404327886006104677091872987173592834296913553225843321065615965897920646645086083927169011172363123935140462214285019059726271437492418936191962060610764641005376370506280067258828239222704103600176916708092576268163001234852617058752894380793333304339677721072271552272594404600260363861,17663259858420311330651766819499911841067663794994694318257191199872170158137865025958007148817857781638492835306514771303332749042829120815317355608633338052028835394702531720709875380635913577846095483312528431723891955957026638053673584169905737554185634030129649039016018518994356839547241764882921390944931575304729587593422442361903863687010228628846862342208853396044641495867576785861723973159597871732538239253298128840563941065388954934551651787261972744712209405583851147359110032083949020208533161960188954813739180009449972293158373021060141688387818302891372350131649013502869609299334048318236045598871,5298970575809274629438935393989318057761764519542767586120836445032263316761487525811021815951911099884013107458570792999455520743412617129043815044943875968069243444902286481323598638834526377417104328855033745156522241109248831526582827196555064828920153555458318257230359794631019067306886747836486535385255549193636393132450664433886493509087281083390290568729201571601929480774638279112348846248022706481056446460853658284203145411150560753280109970030570227674159359532427547564201906120131477615407933400264643596572008335881981150704968737407428485573362254058660832170694074403410494545950595818012264895776,15913403370317249903846545253264583237445426368566054050873204733344285093615027647693061965382356514660489490017289737470216855339451599323161686141225364898734459213317143215419647354792387760477998230133600223913390244574171627679693591136928514907378143973333998319592583595882555481681002615976566590485876365765518571760268938260544608828017208378436062792581980653043467844284389159435925884731521336805223809049222649874552372676573497110509098941429212961378401761184902390250234585999298135037647853709390803265128558710383431672409386841314821848625953345836234945114508861921890833145094378447829164485787,2290909140884019351426250008814545735225813230804981825833168241438120125584365814035371010990772186759925886882837107545743421629040643022748869446583860483172598682089887676740059939878553272595424436357723367398096377972698494175572434136161599049698027302739164581483237687791238697379241703838109655701932792883820617202754352159209515775921392841098109717647668579384288444138762640166641466203925793570935398566304261495839675905915184706531257340555764797653386663178215604213661066377035729358506114543600757612373813217341582075351741934166661911856401287953329256496263459473595206461438549716253839581620,16642615813361835581230500131246118445590603247887791817817316273244438476256311337001611675388574331977410141699297630317377151836311293305027088331310025109780248001730816502531361314291505497281231329646213545390817348454790771602982974763540004526670479533111992035177312072478629306988622806347623090425003234077873805375141062348645927401285345899503907001825760439541705306585854742931882134500925066002906885338189163552908934604616236359806104007315451823167682352183241953279551520079950202231330492255621315016646701261669501844925563045252616708085163536257987840050252877140816998011230187115088535718084,16010347999096675182232092054526583890655342476048555695134478148077646319292254202928857709848426726687922101503995183630866920756294444357812738165670087524526688577215556076807546011943089084967115014780281986236650136100212790809186133722139336439667178800133917927993914606420172087843235000579778849526996068548810587854703520128067422195406060143205277668392537421614569464766336104310955572146529110182880365088792241394086157577886083440548786679580400292545275535505024808973895871707731827445166453079771165377996477241584002682623055073167645192536278061988188027824852844065261608054572024963829903461213],"H2j":[3368171208877966911054339907901878144315427177489764716664525147952589494997571345476952466465636584372230416806643927079294770772639785886747559841089671070120102511739419185926825275343129268693107584218806327021288882477748577914215697371729166784288283440868236399459954587383445757960644874348547417850473459042890356424271874499317095341286743556259239705095932387025485711185437452734962326711790258196775033662070121656155183933539103178989257156247756946175745703344908852193344259286268186560067884170926994359970521939453852919421341990972981960061011629945378288288327928173529860414633963687461741921536,21571995110918784658914871089233085747498481392093921476006031602493786671249981878215451382962183306832489322303548281716296137774931836883062638257871799588636736223841397596603236825079859053119441636830060533162035824030490541191082185733831191460351456499274515867869223195196735738841516139421749973183291711819985317821732516820314960505801684638233368245136026792456696584282458766742520555425925807015416047178765452538113430822668214923191463369535833443605844329620997852520039896259519774630621573507729397714725431894641714478634392952187074508209560077240054333035743202911738795412331854359778973195140,14361846248841354239738429614485615020817620015740214377557182447187161532145777460980697522328331383902906916852306307688790083451608130261350491455026208295552005757157547049806867066926847972162187184750531821995727255016828133897770613409484181886065535775699953909464798003780913388918153183011660224430464726560354626850573087079518001579497098985920611294338802921392907919446517107741456227975646401634963060678572780580998274987217038988195161229432595476488751730989311796958677066257365863948226172977171594831544011639884849989931328654207271418544321580100757601201270000125579606365984683036050427736901,3320303882237934822574723730249906877625782534310160672723504685750059065549780868692191634937564489497907122877469551544554741543440051593275714064385262048169355745443620314041833050794531307335253819559894664711581948933864857312882072901440293913927021712377972600011615454373450050526995352982830050256391443830850515525775497974669346917338799122924286263331475349263163070978610950486766234107397409979634217974050928014066919223534136219934067215088896161064759214148618049130963680983012705398939807692207987093138939884157043400363128971664499276483693036909962979142844998423058170845192989653278227244556,11392712315645310673556256100365181042182208368042016535682634838624439633464280578340353342992697843456486856323709208993769929825667198124843256857854149171724638555790573818365215224736100981973384410995558183533272266822358013891089919574254939818330873527463833155579817319890250882056946018928950519405481352273564274138745239339555689528027209630484474043328702633331977168775903350557929023233359205813047128230741363083482041365845075249319178793999005856778680811779083784522911420519825713738930903604514930432327435755406403484491228343075922083298289929463367612180095879814334515830338256256962304365507,16128185768089596194287119128971616467728481679140585100708821051566471323843047828854183726318833284371487280925375797724567335316422823058316454263458054143106806709907496680547056853651764349462358556329487313360470751830659004515085115085503406434144518308588359624087795942838829972724870214686385899497790143468039433972576851570857473482249444251166188717970319339154993972583107254198134043017660882069243167380269891894037618164535745069845632928065376946760432598515015966819900477155552863106379035709861023910264232532374352692943776001019180723682584987138149276551856921296644229421379331608912433891787,2216711622729147643119351601279604576561222476671706440839914460051282496368367881534683081378746937805707571316950268212663028051018612966825594397873907399847514954700788018713085783872783310865267981225782070802491186153117333152717062661110252994273036185050571252614763467112197381544773361260703440205625252670499456016034457927577251901944688698835868136916669160283880144324751412122403729270589464975875662168775295336481672192780137765587777958466322897160031233145485380452023766308429956773283861365366429753738225270634870302712702783980696520536919562785018253963272279772947237341901826167911636277398,14567981249611770119460797088791616882610277285940857160650608249425344206528691122331543913667869847178068077135905754757970717904714688019328854767805335556395966314263235325078374161755665460346725642944725762703818596015903905714083108502634334495870792846224658572820537006327415243377500340330706127007814008821793048336577227035431648149947100606065474813247441707074217050761365292856644845629066245995828609114930249956124849463230151850823327413055370077318181578457937246716760725440912216906628033172873929155794447444347775998977195569636526530564164070920144286322379557192066768871877841501668738723305,11562467842115790891804601373773643847126621903349499609152938962148770984937205728801191644445725158989276699296504193090664088648177394705510081647868491010141118677836328015755807190340752111789458182176683494843129204876774659319228937425442946958815453444622877125277511242659189800732695804577042735408856749044867603169231506434230337165888447884043777386886336176295745762185799165141571995448994795987563473269027183930075484844146542824749783851152327060411300732221330038342605240436682988238960554043191119742665518743299119772957848539797927531910599793668616983919654530567233469044356313491217598173963,14001988942247671750781482079375285966547579414294794319094213847379686940578167330959958747320137628734714588973465688779508774703004652572462868416321674738451567199004872420641775754108356291951642382728451341563463073268234897512437292991864411475522021623042299363078178084134670414407763213420631947305174457007699331702204294303015464925310244650403343929391594959891748515738314022772251420423895070351394216428634037166244804545860754313566530581379130190514697248618490807663014153146208137639940027271688234812971813570187637013722635079779830294526604514749212529717398437104564243590356265592707324430248,22660381208680529934440965587759859630365737502029115748369924654698991903261875827625444059798716389150600717053198039271991446052177985348107490095372700835812383361394955848974961135498980301472468398590372824927166661721168913896457190085269560320077063240744390945543298734163933076390800852847268723891846915780866370885782050245477056357544654583119258014409021504561016925378839878361190561580782875056594285065583655990468688145199834395357403106937935824760810934700883413929457207664342072543405193505090717688282434192414638239406093224709925453132516053056802277292184257441746331824932943075086343111278,20472030140330590554727016751322746521411547021589348812503605132754052870300345339453032427074737788538570891246727822818774891000538284023878268779231690147875265496447517546051987993131805558030308294615301233476549529141133753715149811029684466002817709334036803452074715441881335148948617848448549417354051160238759910288354822541817903899839091496273435021826344319441409806973908079330351993159801831003550379943098083992503486981995525990398355622285332802868604496636639655839747683821735810491234886789689703654299736502370849656509374303361111199544583501333765966424789805698080099714702838932727164170265,2453173651401016059883376082702788558595819343620938909718003743834761063920578770151771007440124157356829685449240956671627119096461094862434828440771694576875873539491082895345114445338009283914246401641276451109273726841868022516636570181871922631150553766823691471767095455577358060583652290109547591748476465162423200240371828509110384977101559949176482932811774533277255627251591525680337416653414697852938946477765739575989782561041133771451257557157756072849234217247160968445068150218106127891386897699168070200218755068578136094949985380806928006246790329032200529105916916706533850553672076045608730359951,24113152339438360498818613385483602121911555739122745946787379178133957345957135620586264478203421944425299426192146461629084303328006516447630615633641891356240907180660156167532682435848933370915136668244592305335752238307655218128679169067763462102575980085156721937439825798887974559139719995948680828470417607776837167245694714142889348485597791698351034577938495332154328968099025912022930753095015877561713107591709857548795164690012791766454787725487399290632750389338230767552797412606609844617222343058516288469384643892784348204522341997782682670665258025662990169755315957866286658684293611644496873215267,23048127989879822710411192866890144848102725506107457207672066933390327615164057701868652098516421397166175276204189099923035751642625511125320886106285613893278788342927698548384268560900735111168363954600824026890037073968715675372129633119593307084369015870114545021114363768521678984746381386414166722200844864695581741219036038918650136132423598216731404838838590398569938445014697553573715959930243891120229359688175340044395042982004999256741864583061848148945179825358319553305735497035945950407010348447423433336328707080153581767979294379351950056937128181379551873194994067035954630194182060875682649437666,13618893464695086149676203128264379703835247962620883770951238013108147463339903484787069986025297587613907750851693587285998342458273645890621629308654871877706080796956646324471034007240766614380367007821000885398439611969420081154359024999574164769946112634981576459912811818772491470799900760145047753530968995478407930477477944129573287306569838212654312701822189291272987922653156057983889008935259264244527455188704827518079129994488508788103513618119832400499449348458232904888661877972105894911067928574676593878643851258312142433749927142945806711403413926146774157545099025460329680057003565864119710344042,23894029291617241391144328899509691451082120805949912944383938437120322549284785238294999166576087704069349411280857670919349460489513399500828536265895125463653495907166485758411354581066514943080277665731467417672021474933030712874768858153808012182457456133833868682464778542510979705494991241834256525297885337509013426009068419788422403698033836643374538850826433098217327104341285009528115639746062522009884356634868057714134080806096522631119686584895158882950387390079669636785522392222833493980203199840117132536258676406629318977553433626720193118379634005263005358473104730141003648560474105109737111011794,8925336938516965008397109104514048184046286665452569746388287155124102463448431342748346308295582163969585477123381674515410213967775651281608577967919981280923720344420733336038269189964575637162708585549385406099462739524026684819607311522399446887121322482655436562521377082292558533779186792041587188361186852658931953312216304602575717772394803653647861926317392730789837892117863267885605817028617970756887793540591824273228108598874261690153175536884068161483807477696239392976829822163308261960542651335245650622440817598987961098884462409657203750437907285145610244236094931259734945402603438305753971150592,11949666259971918796589430623190075546810486453882961593114781232790528357171489136086300172564872735213582648459678932324553671446193373613445392996846768949427585353892225809922873734606473958012848905522095066153323414491640379067553063059327565094898320425802881846169782611727703042073646692303198048486923691657532734229486488161759607766287874080676488615866925028524263799527274261471472615111756048644281578781133899646868101860588922113737985515123939591333283772116702698675273675787772365936701715064375893211337204849804346824788133348904362412793959284749560448461044309070434592388006426231060171764771,22250566339370324059402215781976249391077086920660167269541657986285216346026428267640441435642495757683689137264020871118649281135403445710476580606390835296225377720486579495200200373576733192798872047011357659910138900430140520045889539388154712432007987497852789128001047310532391671755193946030519165629053752937739899959567496721448943588557458516035029605073085115080892712303741049416122614132971525567297514147438256957998569093867126816514230762539072531021367441808139154778858187018499802649090111006001230394761758788797026721593274233504527845651968558769656875733771044784061166465882679811351871629592],"BigXj":[{"Coords":[107932666477475802631511202367582748861519739569035537904969017494701526323818,27810089900979531039053592509940878404833992140356119628629019981009106058899]},{"Coords":[70488850009775279003934303461546816167586319901288720095232797816893086714940,21365158033407193885213404713050228625397820553043856269267720323259910113340]},{"Coords":[96704419145309517259142970140495022508494287400107594467439362232020961329299,76628584944766298203991062873793502752240767184659143342509677627090500089962]},{"Coords":[28019161860991754547254544009397503028608838172584402384170752184470432984674,108882834276696603625351040619123218095898824500661874818668494090573839581587]},{"Coords":[69854419615803608419512220164651266075688659942948825382651503385261699188382,86209865999364219341605400066204025416938700532196803014526015416182305901566]},{"Coords":[55707469940275855599640808250448173151230633312005616373715718152006593734016,71581471827456608524472614862044126332419275513283203837579704443605501341979]},{"Coords":[31537542564214197931115404850756486671358385103785295421162883744455005249506,31003647934233069190792056145926504346119044635106496026002117518163562078840]},{"Coords":[71459743938853567115182393388387842195822211722537627655935266215390092032802,105621264392663357649957909617094860377111556629887291515711877643951632476111]},{"Coords":[100170179262204638729042299933877814060918019584852761639094198183345507736585,28900877763089774489040863107152228045173480683157331262486804734772631569442]},{"Coords":[3393930126761759176345687233491451168543634500428196687848693751772795262696,55773871461934232294712308387072487465508923595028614508001564000526922809830]},{"Coords":[35436174997161384450863357581481493940397620545951968086180770941965008242533,22941476771782647278770334144010957938195504420883358055133977993491797250976]},{"Coords":[20742591764203230819083960194719627433799141307841650214987882235851644570480,36792680781195360005281832466704518433303594582044389944698351592636972852101]},{"Coords":[78822613167932563650341174247543824338627391764838115664582901884987316485415,29305611808246076472515388603014476455888609363718621630903671994111327870746]},{"Coords":[106662917025753316359017201639970683777210765763056751174154469380644107823988,38376047705320523688829546978146661452201839032747402442602961204420046730181]},{"Coords":[50131378328647772110850225682895027165473791107252577081428683178756073747030,6484525664721285218064077598136507537588284647694850022336064622644441747313]},{"Coords":[63814576207919556970263190432671978386229401573575575774195362165468317841987,52351921007743438678847732376277019290979039258214198300788054101141627584484]},{"Coords":[33074537919982031116943260590723731125144796968052633499149040111855190089892,52462876494517613825042650703891412581466209764861573326649361336309483684004]},{"Coords":[46337244846970653814521818706394664913446423803670640514811670889644615970917,60622380590936530234720907025041106487069869976400399621024354043945489694205]},{"Coords":[68932201886808999446322681662607675293176822755681592496851252047161893154617,102558540543641758967834783938704783088913683989892796677072783324191846467831]},{"Coords":[47093684301174743530406169926797075725911173707597448168332637736184121729220,74517549523358620639964596401882412428175945976473031695393603496712918162101]}],"PaillierPKs":[{"N":22709559588116531632086995360614881758145847958604375585917706994116168375700793376291131544827864145364687259129107134734036373558516565338923959924703156876435469021413354399418993619174071015237246272863140297401272631661028437511282301913323857011886496541494453371682094558243513835287198378640755589750985308457641295136946180231598093936765306071278862423297167033582450972276390473663053961764398615170355333807856718875047329620163477731845253445115727590642190491372191245975524943279344261890117425706855830582201691939059698357650223528988243289388677629074389631868130733940366531485671699566601163615661},{"N":23443957150234287781524191819714980056334495753799141564738532515877512840928595615570444488815473106829833471979932833846134743028112638013245259429585839683894162551870479232892081727695293106142145837752188330564435054323350976552725925455074206192778580457152750035194725712966851385101176362564718763658489874740341398176203077931510475924742361380746164713522692182335455005818339528332609035897638651762193188267900136476551393608916669622907100712471489443414455950510417300576764177277906265582678299980344888299166427651633758323734973558749488731824311505669417847053850760848940423643750519510719400853833},{"N":22287028689259504755807149120904050002396020193634043129060485604472139332057712093383073269246020913354970143960065213561811698182428208504100112877284663913440710058603853492628849020664094889598583038642474751945815658301741607940280803922553940685657785019086609257141579057485855668397778602262577280637009340765489166395694519909332104264865369924039797553524566502151933416185073911748303993059047774791584591703105106437459703251723998725467328206119091524784524659754164199098692948259716816125731645175450298738430174307931086107554346505367596601043514472572775722114263120820933996056766066990263737006037},{"N":21778455942403717802437188616130445569467912356333711523204106321468333958250985526522676150458521139952234508699903096368286173136552336834061186195705878795885628080532376972447127537374960052755412900354192740274699607194495256559382391407619506149746521336051948176770581697936379025338953179299724284866217851767053361169462746892201032000776732741861429352495405542992367041691709412944529198233031428083828538853890568987466209820731450551650370292813109604532198408719181905952928419308306626664706489746484860069309396704199131581338218405332252354539932883923534658047809067343949198229794022084007329008301},{"N":29488834801717020514549557511738862835006604218586783270956635930974777840977382736818004943434492491272083417763033198615963445455042431681833978353867438176815774128330303688651059852719975859250721567522453513175104614385098138081209372251486732213899964978141377939387124226524201851559541320231331748973500724292675746395999336271645347092285737228923411234511145980962423027637945866866145915490526131803713409632083226573065035861386075817821231913413262072294132940186959486615122177174171466978866072639941945123654758187894442697758141328636666389957637295324259708835849664958476600091423260629670847006421},{"N":25268781854018641821625117526035412649921406362359871346957405856614663043063881662682001256500050697385215601589085313282671061645985003913281457834036290368462929918763869754871955608135979298238482437377851913552755913815405018774915484866488142406303297444296659799278477225336231564636195441498040062964451813900346208766721654100661710718867197194733579941984196715209521167970358227552984230489600141394198144474928084583860744656840175887777161454380202188440178263993042579519816969496156562013371732648143667185817225623397113488180419930136011024805515953457443050643425221010148081098971618629282508806153},{"N":24077030535873838147372990238338423111894661719881851208383511932936303788667059523325649062922462968249640702042151293306587810036594125879862518141403476609262478705296844024060273562609291573351215091787555942245982552314643486135981274381916357213038852978171063476276539384812002232533351978097782562939609101707149234139391638125337919614533689982228496010017193463462456934753130533077727108799001253943486336718218272844533405886783727956436625979626270665501149887064412642510585330023269746464208739229956710668053204092869919317416558618819105166451453240320574158658174090376334547079951345889147202424197},{"N":24121210025310295136286367465067731861316363403302816495348899075683542883649267862423504534408270521528934904000166037695519824119622953526124849500602533136680339478221010232315859804261374907195769559713293619918530079931895046819311703445607618111244570268187554380693098539122537784889700313005700764528116670706472264450599583329582635827622249925780628859318211609939169828662135675938640346560681426019582628979275573701346775265344080547061237809761964885298244705276139799178175782218409921284339726928435810584460742981474010807766522632224843035722465220411812727073796692626221078545796203402892726398073},{"N":26956782591324520026471701264974010002551430844929064558517606333109244333104364565707985261498791802440691867651722784210280888161145432103606824079477489895607158911928686613189674072708812330140444741131333062722881890279580684791181148664415766399323289281546841599984936640417820094077391333063403828290767644884268872176714175866593843027335088472731880830448148161449695591865312724115778446298294191846018327598860718546463796845910458753293225328770367785304521228332493000905274903063796918859478998380272311510096333363160486944174426731511854410356169028732110892177884127982236790065871058497952170624401},{"N":26249557760815986852034237905417683014048371748204856284575862917968310785883486514046189771449794410062311941320778404041317694258818896788913080156960590072834802977027251267292982532721343074208805165986815554608059680417209847673748867108719737464989377176319950884300513507127044766841349776517208994115342645229445634306184178062065483947743824551463650982111893910449653832587022792656303977671598375329018430362166017195461057586254287305421091325058340750141735758488815547176349755224428765382123772435956499576803085012124378000542928725389368171404677133866847871236251441021957443853014282022367009685861},{"N":29234737641692976595774236923019314216135921756073342884203680618120226690739166288052322806435356115092650761656136403373733697692050475566331202817414926309882834844059857181882811689758047525443057988160495074334079542319370840285641441603178202467820462588826229922786870937847036888109767951604636584098102615282750014508387427358079100450062680715472456836097388046216848854107984658532128468648705497171277133763535425127577293318939184956565230142817502839346792604559307183239212332206857888330805061669830296766718735240517983609617995793272006065303892130080909658027060291496416496673503247698087863812741},{"N":23656386949781378983561509210223997485938600678969404520355733863050336777307520388106184053630795530040934267843013912848246799628076757878172461266778291537251825140340096706161543161977283845709058224884977213986434571463756330276479208682952096086332163009127424608568458165322976353036562065434426650045708578336603634894217912009997772105108262453019882143577371634194078714264992380438885990335741008955488808069468796086801023973076920357953123958081822096146124559004458043648352764252390085772923647155984579633692639191141425745475545839873632550694666801559519849238477058285069280151324843991596401646381},{"N":23799985430892428550287426639163393896421663100337917557737015159273107046495772196531619480943457572757018895004491581880198797117841320493538657520011738472038586707181276745476787089472101888983238214242261897466709975139313526918983914349699164310009561585851364405464439780111046692215844366708075439030620693316351016954915727063684631173044817825576871464988585229583331260702104268887569088888141481975510438061934915565917441018736997897082388887244599485050548831301667982348795441755679549415459512278548728977097478254566801983960996625453970296380670902503277224729081061542066926552900097298958795919921},{"N":23398981485141581657111580810187356464859260220476400872431878471724619284703169207796437272649895475435460945312990810473873577007856956495840504596329080928974891464665270653430872926713471055976901497303072174459471872022720981442223753911960555794844008812776454183058593769792366230853507105586338576934054995838272457499054915439455088496111012971850904735289245691042597216634196809202787360353382667100073960437339209464655220130141692780283364216457426778903461083049390591667885095066567970867147659207581183606534554025283663685502553767113396678790806758816850832944906936477595076662914396730813902861273},{"N":24645804484208008107774215519843481629641338685651268289287772114412526440944111199969614165736177320304962312701073205538949325003439610780511806547845684862319242490345551374064725883323450769869814834613757570218276860284970150303912936880248283750218053176729988470901025014948637258535944241625099061769802348376561541469733700398108049774899180411488580995483844861534070436865153589414051441506488195269353530135159150725450897767102214976100194473384482425657735122085724544900424323758582364844065404991831422328546732900258700279735848044809564185617079126240413557300335393565946088211107690073344594774029},{"N":23664465666512928010084076006211208070039097235865486451752383277009646489200010451773766854885315852604650109050180997494686499532996982524560956955784208153283884502900612829692080614937231941501430129101050170848135543483642879522140453631883679490750446245717832265221232589489474380464199065201167874127465810334527670252907568617820949350516778153996202871756067806159248004814563340677682071536108582393686279672503548392243690499337315202892692273695083478754736347613219568092769421161385508903701795824994052294039246344316342377047969959511601521901736714883097032290625287691937066549723767146291790114657},{"N":22165609813091667259068375406991183583538522584875908765309739098448534648989953434651686788146626220283972510122914357995219529654582068510398362007031593307847827533082059785375352080923687640731375327188268078188971415753864060723639564145551626769223269559344648109409611860616931934210627553354435590764505138165455042290624193631088250055962033560484870481238850988856340320616852463026890656813658017413542014132396994215496811530247375977104307808133564653689276479112825279061966541271092780066027501498091088819663615972345385914896991989394778860649710938578818683661928070093400675043514978345177529652389},{"N":24352137164919775060505902875895344669551891343219870713119659495462675754712808458066602996522267529841963340495194383402601416044030073771848283771276922546693343786778909195920195728052430645791682092298169597213540403251589258864324656830830912032021695409682689693414793104678019843226941004344886835923010707685858497420014814885662783481710790760565625597934856999445792014460533464855807508832344902590088930105318969772303090927340774137226985715726042801943592444113021856673268564036683304420372700405680896320106848396385562893886698977710031223312091933030330629827691164100994176634674536649129152931477},{"N":24388425323514301995345880181969195093222141730097776998750148283180811486102209130079655780738706237274584643472954914248041737365215477795339570700387683883122567928523036945799350046333477704674538444513982433086664207664876244841911099162128315338715496189423824903190803189243082722638413039421880070666657272413079871744422617706188003161639646693501252928939859937588136677607569634910081471599993513483449765647227570734163189729311880395414909879933139619835138785852476313690881562300854512419432999005203281002911021482679309149225773391703345476483158302622073477221903694296256566718995262186459619480089},{"N":21604728584405813409256303272593334134333518895675489098410576803850613670962405878762275711641486977471395420657043551402890823783906820971712770494973201278527635005537714974340519544361402189093858595896231890523544098157276831993549216761475195055251372273062282101577640320665049775934814411518181030603401788639796770568692007642464803606076672769360069701571162199680486773757848273630254180550410784187377722267755203781450486589090106764541644204842436002216866597611146281471192249537747681020939314396157603364418120170135828923470079746789793341042476885118587449440114091973976013051496269141578521399429}],"ECDSAPub":{"Coords":[82191134404558877049244897640959846424169542769967270904890689024123037541855,102677683688073592669768840687667774566029618427936181452214529135934890152533]}} \ No newline at end of file diff --git a/test/_fixtures/keygen_data_13.json b/test/_fixtures/keygen_data_13.json deleted file mode 100644 index 8c4187ba..00000000 --- a/test/_fixtures/keygen_data_13.json +++ /dev/null @@ -1 +0,0 @@ -{"PaillierSK":{"N":23398981485141581657111580810187356464859260220476400872431878471724619284703169207796437272649895475435460945312990810473873577007856956495840504596329080928974891464665270653430872926713471055976901497303072174459471872022720981442223753911960555794844008812776454183058593769792366230853507105586338576934054995838272457499054915439455088496111012971850904735289245691042597216634196809202787360353382667100073960437339209464655220130141692780283364216457426778903461083049390591667885095066567970867147659207581183606534554025283663685502553767113396678790806758816850832944906936477595076662914396730813902861273,"LambdaN":11699490742570790828555790405093678232429630110238200436215939235862309642351584603898218636324947737717730472656495405236936788503928478247920252298164540464487445732332635326715436463356735527988450748651536087229735936011360490721111876955980277897422004406388227091529296884896183115426753552793169288466874267174215864959086063115396987661509507601423213299952694357566095982116709642146507275676476916174766252917454971092494837807206685668139076161710889932417576370426907707140412421197838786383752168421220956354741094510614249891614458819091116059973385963832958964757080563823732721115765140978686670088274,"PhiN":23398981485141581657111580810187356464859260220476400872431878471724619284703169207796437272649895475435460945312990810473873577007856956495840504596329080928974891464665270653430872926713471055976901497303072174459471872022720981442223753911960555794844008812776454183058593769792366230853507105586338576933748534348431729918172126230793975323019015202846426599905388715132191964233419284293014551352953832349532505834909942184989675614413371336278152323421779864835152740853815414280824842395677572767504336842441912709482189021228499783228917638182232119946771927665917929514161127647465442231530281957373340176548},"NTildei":26870132374951553243581913321377246229771795848056596419360924847337540300978229013002723427615100062690126686631934134732102152941473371391783556453709425066357685692036492637888980565254013131275256724381428020710512422112788440607830591932440438849890272166273212125255293837259298348084558313308788645038416611482549103781514142985867750527012906984385110191046837459757808864741583473057341019452578423080700589131792924736182910584032669431737863108910781465411300404077532371983623221078943741087750842713540302692591604785862604978245628364756611702919842339423052849035969584933072813435912401288087398604921,"H1i":19681285575282653686371866964026575635551812532880664611876190222601081859688141586553347439412758942096084877111883472375168961225184324383968489352875717670106440217006572540605411871630725641391171380023993395232691314662393923848318294382993540810449491616527524662991307157899373490742858664974644838212306475173795164847929404327886006104677091872987173592834296913553225843321065615965897920646645086083927169011172363123935140462214285019059726271437492418936191962060610764641005376370506280067258828239222704103600176916708092576268163001234852617058752894380793333304339677721072271552272594404600260363861,"H2i":24113152339438360498818613385483602121911555739122745946787379178133957345957135620586264478203421944425299426192146461629084303328006516447630615633641891356240907180660156167532682435848933370915136668244592305335752238307655218128679169067763462102575980085156721937439825798887974559139719995948680828470417607776837167245694714142889348485597791698351034577938495332154328968099025912022930753095015877561713107591709857548795164690012791766454787725487399290632750389338230767552797412606609844617222343058516288469384643892784348204522341997782682670665258025662990169755315957866286658684293611644496873215267,"Alpha":15529829596550377660005481891186656308983660766881197075509128294539337047506862760899788252294682810608509454240824718831161655956315066484303597166296771287997121929010997177064292816702401363162197940172499526433545442317721310170712688214090488524401809501973702310955527781149517330169888657078370984142563881093644443094882413699584757643365656591215040360847537954538693146826462691158998724576547380469557142554780259989659865863440623383066724376511455261762181944116299632289563729245243889878690286689553627164989131513644230750947916988879720568562731119709088615430020463047506629235738501528743862902649,"Beta":3545641812835479078994846550302547200869989403103542867645581310394921084227666851368579402330539857393083273328043732228555050031765926829530088656445536201870815836265882565598225193095033639680384924826443634746625071320119095203276153257167680546804338689534512388340667978365777609371635265199571521947181130342462122710964515650497426890820072689482906905932298122051364966333854806294634099952327955254549649820184878596455352408136675211633457734885686484517015106929627717121626193820022688421314623534909403474360031460935339058069958677758793057243342548983913126144476426993204729701649100356206385916937,"P":88156025397706768146092749995166668838069006589963871086305015594935119482177091546235575282912626644293418698257810533388439864108353820448613704751423411766876120528261050181197505890908933083248923862707652762174324983899732743649633751013994041511578248587976613957513399960159672553285916641481291310283,"Q":76200498643540634508556937605104639995821568445069888278360058652399714715128292602327263710039086719507233378662916488687561270596965540413277936453205845379667629570543225821999134537625349833841959467951812686520339186447047560271847648469762424306300486661295272398476597504269302227097999683717305803831,"Xi":12316257953813172015933224614525814556993591191654965502669784529170019597248,"ShareID":70024534756929667616115849317753032895580033020239899587896153938577578972762,"Ks":[70024534756929667616115849317753032895580033020239899587896153938577578972749,70024534756929667616115849317753032895580033020239899587896153938577578972750,70024534756929667616115849317753032895580033020239899587896153938577578972751,70024534756929667616115849317753032895580033020239899587896153938577578972752,70024534756929667616115849317753032895580033020239899587896153938577578972753,70024534756929667616115849317753032895580033020239899587896153938577578972754,70024534756929667616115849317753032895580033020239899587896153938577578972755,70024534756929667616115849317753032895580033020239899587896153938577578972756,70024534756929667616115849317753032895580033020239899587896153938577578972757,70024534756929667616115849317753032895580033020239899587896153938577578972758,70024534756929667616115849317753032895580033020239899587896153938577578972759,70024534756929667616115849317753032895580033020239899587896153938577578972760,70024534756929667616115849317753032895580033020239899587896153938577578972761,70024534756929667616115849317753032895580033020239899587896153938577578972762,70024534756929667616115849317753032895580033020239899587896153938577578972763,70024534756929667616115849317753032895580033020239899587896153938577578972764,70024534756929667616115849317753032895580033020239899587896153938577578972765,70024534756929667616115849317753032895580033020239899587896153938577578972766,70024534756929667616115849317753032895580033020239899587896153938577578972767,70024534756929667616115849317753032895580033020239899587896153938577578972768],"NTildej":[24366917239515824974480442558600034492208859976504581465004349103795399783288421050831073024860369440303795551299953821996018530997630686285237603133194573622718124597460737572013930327249120648302190449742363261573076443183981343509885970573178298207488759436277685910850783372123719807298277837194569211839837465137044422691734879346883675317045008891659749391963717253895556693016508386391015178130161988317310806894350108084212611277788190739249760699147435109968242744158314817905689533615803297627887736048945645075792686416602832677541152918424023805280241226851534199867283487943291927564365275467582581271053,24760645214372673899925400730945520473062951341429554908754617530444794660401836428698520741646966955149111758288194803110363170964340801072472223878272430220722034553855593944561986134993071918255771235073978495918874383067260043443905506152815841034811512510858407909698555608803009379935760654878372301870950275270724586431009354962811874333750886958869738872804882633350285507993032763679234057221556156642769183354423672540429587887851343483914923600996425040023829456198369968692844034517720322057627565080062766276792221145223750390964637842847390939964073972850018793739320669513533403812272268817559996728177,24335507174653830446370401218472354012341984065893977351232759664219171991998539382418393419142907217562914494098827810315198583692551476438232634594991137003295122745831430159532586451010818106345725278793436836406022036374386618877645773128457664942790386603953998246404350465143928182109615440037926218085391564421745517307996722808502413850991173460229650178023548969664557299385141472097112836353938598657235574893430259143862369227601052831476146199261368117297723539373329843815951236997008000605506966102265798289158763516254914284024816124992986001907541315389832578466014006010753144367487203071067653140017,25353120959776139123294155818546513426444543204238814947681743626639583989194265533184090862296087842527526282860965927846515276605818147773016966742984780344247645856238734726222917730082852005118152200740071409410429096265046046476115230269737050878141459099734884888260830179970728221214610731604157017545322535971152193773221758709395769765431078738204491094323008301356895841037132747444047830530409305765562694358003007195242702308043142399969256485870876259711230128209178441443167004632638027691911658424285106297785382963002590496015895572427776988235599297735903480964253948429971597628412447354914215359401,29849885402332341621158797110436829396646924395042456662853244309209629024048299162272105169817115314715561658954210859089958590864101117136365470947498907594068557026997249170993874294161892140147876022164668279854630146959174794473879294364568105935870579392660025720467645329300426773479121856766502569984218591054914763859996476236063750210092775547343099066989888106146219058807079888624162205626100491953381078296178689026680702514982189001052448223393538379392778307314168895065497502603308074595916000270844935723623383768691838356870704054233137068509668072099435779943491520206735659166266930856700483211181,24303346306264095483727907643814355785838936488512300414348142784703917728792656928355740144163123550572150171398192480623395181408570425672723511597546032812698562984141032629389936754449924613948711482870260420456913877526422469201798411517711928654451945040790337077196569240216228957228264615761147375423719114756511538399142649755527243797217920772594702713281103939163745422429156605226253637010451757984598979666631182977221341184990723224510127460146263007980086670575857365789365543477249518437176817144448210584125518855115672157465775432933601089465408090382773104140011964681476656187299047937685144419517,22663176204438991528847068755997123453980704364589354833944958947785385672266299429364336994892902925142195136026995771544990684289261678272550855925683439714148609523477977179010696117909805695701859018966669150739407573082987363056991238107146673103957237104655136409343763639221993038484198677605284199701204669351878989982962102150055730219424526668206392140254467740757469800556697236694088468633665970603098311956910105499246381935436511205439918717236853087415401432056630404175846159692661637004967185601880460514710913037913825633119857629058574151126418040291146967097319384900092639447317903904481362864461,22214406206988221120543596573138808869312423548073528052574227838235500966558488375856182495656208729058219131190228351185002058116343873479198633895772314072671413818939926736318457089940649635331152484030046857163634723835906012553106874988855844579826872824922610248380139635284283310239564378546105159549071234915504686574306652852285495484227675227079507874801353534124836509674143920296971261218965184384289987323806590503991373066703353411925035343072343417173322682200148341574699074894310006001608609036165489022667366737175975429277190015768847957906950063130121905159960720849686267420829596753652148430921,26992054981062895613627607261766199835432715284801801749398907129229048796737348701447929605174559094984645968238323112325575430714478210726667128296579144479334211667227791506349731191531989884599385537951555136889431648507040431760656554949203843341649040209953028348323032563665739842658324687215759862340780391326904566525914822596715715051383829453805370490781186878600411802395931887164480044180689343432959074712196207660797594065685195126347713904229309636698471250350144098081500570797555478540127343168177689831999672573508345263924360426808488416307292793876390765153143370885661040432948994217496537757037,26883601429347938201866566412436359463282736845136879263977010812101340295160083165177085686402734295128738223195845941394861534416081222492334460738589328436684156816061652087254848610272225814333318089300032442695939753398569200283276971829978683842747584203047240258517693679059389343721225356421724973291878661622168915849085533925700422984364421907650824486413330797840743205222070155228532990351439410717713883609930796830287062705670943579996135308824473851899048361474382520461452309816639861239026761274994745411785747289015653392872405877863169928875880404134872170564729075194783267248873823339090853461089,26675898204441883357756938810501612911006923314113656530850642169244358619346060171584915468088311545710004060513299980257359925141562861692364285790755062927815783069742814310907363159744172010043214941961935176791603921250085454102936917126214113873120405883118273636844903335000473865105148550590214462929117780405311499444885924770449779157142014006830224170685309315154438797997384633339817640551850145502452900467824909085498261391267709054450200313476628713250795473832792093350711410373115197160491274663551092524073340836221397352664353235247831158949819050115215290772010284539607969271690219902603821582657,24003425727589170532663869192322030538943945148822062399216337010945961427378027710524236529045097740008239529891693854573603730323074574387306355517555029571396270483790272731994105657673718134894396083438028861748333502807033025075738141563799251049728691667635160338770958887288469952328987442729682278796947289053518986771911122562542149441355230810099948748099507142060010177281487688268845292432759376770532767245812643377347484905682286529844081415426101824234408564247618590677966518836555327692461478356122297916534505785216531638872958168430321684571355170353352724268927780693184938724886624339722183259421,20030939948791694094921106997836532434578994294403521371501479100010836848962747077471607238761388497679145378822499150459403963802326636975589780084279335637070321781313502047027883154267014733038805978970710176410579107929485519779112034850622531520287022547371539439386174878773544830750041302618611105173361798826270784808992652396596786821436733488377837349284332001375201088424331364286550732742247150161681889289004480841207149941594126907534285607712061943572341899739867922754683103581617612214747009636033814762750497302268078808823665919929249386647148964298452596399586628310864464196272071720395192133489,26870132374951553243581913321377246229771795848056596419360924847337540300978229013002723427615100062690126686631934134732102152941473371391783556453709425066357685692036492637888980565254013131275256724381428020710512422112788440607830591932440438849890272166273212125255293837259298348084558313308788645038416611482549103781514142985867750527012906984385110191046837459757808864741583473057341019452578423080700589131792924736182910584032669431737863108910781465411300404077532371983623221078943741087750842713540302692591604785862604978245628364756611702919842339423052849035969584933072813435912401288087398604921,25781309885353513172762417920559862373653633766198016154431702305819993747433843312735651525316421555779956949217599915608247344211910767561492880228357017663462131839160610108626231391786518524635537763772771732022138542377442385539024671393136972077400774477946909998449518641822004119697621239956294809097040644518494643152713366295240127317300380586618659118989790014789381034410565903140125870883802621234783419468923863900036725871332435066935174631607488613764393382263135690909855298574769132391272005233712859895795189174927584736869111985784832037628893972777670733794612566699959726190117505644366934694141,31307948529511772422092081620376528723351660195178245630091738647550584183808045529448767036136429258045017880313805169530174754560039519751935200016137594525166410173049351154227454247975670642857061354284229524586536451868860885813714578893448403685065908393856455188372709054731049692863370865677701391460552630927498629863324809550335559817235997586126538332699529118621351625401581293898546298753212618743290610874832103267345624474884402930254336353399762494911879332332316505133643206864735435683656288655072941785814640312959405902536938955107787448304325831133755028455554235924936888965889253927315459519249,31466961232199038206393986199348595708256863299176374148227521484010795684260339468184532260347996789772040097386032241172658309499404470468218492541809815234208995118730337303514831281668817831605535229415260143432704661750281094187807328676322407373913844432440683972812394664524853699586055958635280164067281091412249301309251915772998531080870705450343112678791059297982033179252277552572737658097615320288170699408198262523087724946180097295208523307748556241283633289461565623961341136472687878275672606572269060361808996126027608464429012339688636176786148346418213288770613540923635302757146988963110333316781,23282315206683722596094270562333648753439051790898100314922005841725502497093211800334393760989042727597691714582193235713639238284172358062468387217727181092939568556559834956352385929118617242221861532950969685568622107078283773942779583910577282365015752267710687089071780861330758005577221151609134583129504364837341221471368611555190375227501319216183854908348755278500330379812379883892909358375120467449644585220805660246421673078936109889143381498767668445860590513918867961598096050612727306953235332046855083649560662539716078578551485777683734466740521988744140757231408246451261769915726695959921765032997,25091337650425677853684475917739333556784369056148930585749057080859640921803414967035499248336819782755466354804640016025044002503128223804670636762370700960312352761126598625504662989187540799606658080278007629478214427447535566556662347722562243890754037326739900472696108231869156013516647618154210840364364919089100138905499001603568088340085110153219085814807927945152975657929969505495173887189020701090313994816079981109190512102678874334588894915787220152560380696231794377692004958328931143825599595181025003997691503128188855105160353707735893011124272774335559316106266020514461879401833904958202494061001,23827659784682250604442454473547796888740733968924087692522596947210995569582513002946432005898923676155984614087332560259943866897650716815951119740918614656692843602108809220144973266843900928325168304104193270024169252614460073574472494366384192690720704949267653372513388389564250659367518167586555169618994627094576635848093242114762843534765611200879960614166650643590955853799316870443339993391685970472310294098785089036360647811365521892090305001153074254408707786436158648387047030717269669710808288303673434511182840032065481730245714970751088620360458026112893074508503440200554493648329036195258926190733],"H1j":[10024025457847388392610646066298514243370787348338532750631360639913721829629888261433439914402718667116400994500512300775136069581637894623537510481269716297031115527602912311323880048384727148486222115704187210174101029381357780998875764924841198846224052749406474209451141960414618133437662859572202780961023516801781475926753784006105642819239485607653090319392184244933555747381471676665633830261574288841173438644814600240117247473386184548108338325639763390271130259071021112922069642676901166841167199223435257080313456925802886649375691201308332777566495693037805296244451983094124223174758130752134991251259,5540062908155010932513159905564312164946355979316528931149460136278288806659772940588319017326328094974853633874382463976169195549392127817304835111543615409573476314059060881338397061412436243810139473181382772109210271463439624149555390649740374635589527762045108740275882849527695527198385706268316952416235237543464363519203592980469637771074904708426157233888490918907104014536294284692202685017252106362206847500376336741712522098586355602155374318553270307953934712780754034315941245597336144803859821983984428471938659224631751193248483706020880124594451403191977963618445462632103562894369717754678411970157,7294264017980791887588541945948527964732046841763268733085682296431903566128312881527716171471646888128877802321111011007465120561544014131687975703500639986893207003039277321438260744935109724584373350656877837682253991859961109267518971621013884413991023503512551591742311046398421527897782104779903020623974791981836764750802585775470044046719785755322826006147242995196401054126149520747563133877218253475355114168420889541015916952420416242677374123641966631897855997275959219115766326404348502491490713975699304986526310844436386187304302850704361098476666746013218735172029033252239873173053183420490728457969,9501218113444747046512167891740890620022448184208745016727575118910400114702536042272711158066289559244823855716406559728787015762712355980741317225927051706399078523944764818407725281098361563758658548109686452917704268397282493394145905917631338144130662786869889947744035847462163212831976185178442327943506290185820473986106267053867388409405767987475830498385924106417897644176202343305711004215516685101951487059182051580662118563531777396290757514364141633090265347173402382594862836539162320425532069699769291364183133350523773491418365804493761877536170212947415911627316964969637971056063543234131063060179,15798786414829945409990379475347092437191933825852017565866427461531342919124334651290935627606571949258216191049074056902849155877229528326934734579833314251986756112086465450838437292200045064209850028597082873902388658379469441564667669701765841537160309665720024332706155566138689213961078587239980763899119769146527020365437175547591597253422987241897416697834718145603044863506510817025716990741255205962477142190641478116356939618991137525950385435749637759382858607750867147376236491183474725313362128439752969796168290272602393139910089130691220986679844969299810559606706770072567820176650336982258175656069,9335293725151276608993402038690349490322365392613976918346481216796454921531989892317554215286413208524498017721329770260220214739976276463115767516661469141467987234112799014449837377419827917305931640946522287484467505347102693011074644574833321939291182991369361351550845549986196632347752029739003400876962371840702829213086378506709453044627207644282674209652698873675164479665879605315024759424379670463637654094152277916485019222649587458037242630015801094579916767996040360006216068355347853880839844214694922100092515535187976540400673364286904799817798092386690711558542096052961324458158162316849747049802,11928753658530568234030789407795275088740952723187227006977773559909074576164921817701724786519460916583196165018163510774039491890001017299531322520325627826211812869166690445989428530376091680807701566180854522056382923625327483414081231404244458202347765643506681512770879868073522880161513490523543914681148241833246281106290736532685240004675518845019764469048182810211653160870255293592651339935498048137995182398802459841631852186888112285076188858851763824315081771524248572039785549974159773606819792419731561145595921289694471859455550756883293661073453125644271107011011223441502328961618975292599286540534,3281434421303304451534752490245528887879239197847942017450979313729063086003376295872507109217827492860554007309921835555072782997029442232019030164252143769859146809734506916627953872016140383116721175515392391691229687480990552997729334078523811275423771755788388400181281035140972235710503768780977567025805917901565574387698038208089499892809008311004708551092635216129712077377038639345772519472468677180077197280667928734700336917165150723117546746441573171713790905181182966896063824517476166929486302044010896828146903022644169171194514314475627079949830761751962833520028060036397259454122764395181619471620,26798335028033483015595995885818313899416775173626251303214746152969095667991567148306665607431284548931904800914249634868412622200397325111043206330920355980127737464934048444736064518743501106031852408038680600709174828761299003903687195970226223339349891916494477088540593890862438659139800883091968208023580402075789145180476758769233643214633776274238005081673345069570155874633220460290011162900873068065044353387042255376321331197145839355270876626896209116281706932058419419985043694684968787877580180579063249938562059688827441196772120556845945709093021801017783532024267437712559776698525435075445312453530,24379152218258906482492311550879222904032299657142525355457269472724266562417862087603238266608926068245433152992105088073531452805187189356790567435332219230651301413762858849116755355885877930185483851669316692179467165059725168458003778120562044911094551614016767541895327106348965256725682881898632251239010971342586248735804355885933092854432575702106523584026168029150861398417670162335859972289331761535391135324650197244391340985538289280848512779115086784546807731473605687728417756436783747883720385660475468617431753857425268742613699673867257484976547014884809737803594445736805689004998882232608324939099,13639308363088689304499602606006748747737150113207488794697369879342136632158898637529348398215211110838650184450613858330095458701807309615170814350482223259077017423473614957663630359321153124867291328161758174033028972972743424022771180662104664036306205285576270109455984955077713540350117086087967860191108122028954920957836754439818988959156002918996099715859267715547983808966864149367592758343569651869960032231333418638792990340363087590766121964019626938526976202582697949104351928836667810574924696014475214582129919944765647849262874087078594478919124600690586319504349329877883243753775251538124197406468,20806324398112704184576243642308446225385834167758222047710915865491553221121456559290405385050181445190026351137186843498701962906728774890279265822922302262674344261443633266351787522423584433088856438680222017039801221837510594012303704942258177163584539612102842678739854493210477613035711103258550560273478479277362352841578985334600196007452719273341052878795457240578018430753780869150598290734861026318283861569123861098217259089119729724503263571923384603566241538064572968952230647186501970761685868678332574820155746476145383468962025352911125509572618602029024652380792594855032573631797517407433780124767,2984534567830588608251691688517562019886934976940239944296177755224193834812017598586976214786265618202828155437088641819872658344085523203617440122990791586663797768559098311449463943487720199704106941788760276946864277974792415345700942642550277726023952217616537482804161899962996481893200668973584167349538844293867619144628567178172496162265433563681342772983054368775009029385174850706677287569940753312983986212778939947598815595002848721076684937312652495527309505744053588382568512842786184034878250903582357463020880854201625144449160004603244837252628379531756302498757122746553391615927560808029960266625,19681285575282653686371866964026575635551812532880664611876190222601081859688141586553347439412758942096084877111883472375168961225184324383968489352875717670106440217006572540605411871630725641391171380023993395232691314662393923848318294382993540810449491616527524662991307157899373490742858664974644838212306475173795164847929404327886006104677091872987173592834296913553225843321065615965897920646645086083927169011172363123935140462214285019059726271437492418936191962060610764641005376370506280067258828239222704103600176916708092576268163001234852617058752894380793333304339677721072271552272594404600260363861,17663259858420311330651766819499911841067663794994694318257191199872170158137865025958007148817857781638492835306514771303332749042829120815317355608633338052028835394702531720709875380635913577846095483312528431723891955957026638053673584169905737554185634030129649039016018518994356839547241764882921390944931575304729587593422442361903863687010228628846862342208853396044641495867576785861723973159597871732538239253298128840563941065388954934551651787261972744712209405583851147359110032083949020208533161960188954813739180009449972293158373021060141688387818302891372350131649013502869609299334048318236045598871,5298970575809274629438935393989318057761764519542767586120836445032263316761487525811021815951911099884013107458570792999455520743412617129043815044943875968069243444902286481323598638834526377417104328855033745156522241109248831526582827196555064828920153555458318257230359794631019067306886747836486535385255549193636393132450664433886493509087281083390290568729201571601929480774638279112348846248022706481056446460853658284203145411150560753280109970030570227674159359532427547564201906120131477615407933400264643596572008335881981150704968737407428485573362254058660832170694074403410494545950595818012264895776,15913403370317249903846545253264583237445426368566054050873204733344285093615027647693061965382356514660489490017289737470216855339451599323161686141225364898734459213317143215419647354792387760477998230133600223913390244574171627679693591136928514907378143973333998319592583595882555481681002615976566590485876365765518571760268938260544608828017208378436062792581980653043467844284389159435925884731521336805223809049222649874552372676573497110509098941429212961378401761184902390250234585999298135037647853709390803265128558710383431672409386841314821848625953345836234945114508861921890833145094378447829164485787,2290909140884019351426250008814545735225813230804981825833168241438120125584365814035371010990772186759925886882837107545743421629040643022748869446583860483172598682089887676740059939878553272595424436357723367398096377972698494175572434136161599049698027302739164581483237687791238697379241703838109655701932792883820617202754352159209515775921392841098109717647668579384288444138762640166641466203925793570935398566304261495839675905915184706531257340555764797653386663178215604213661066377035729358506114543600757612373813217341582075351741934166661911856401287953329256496263459473595206461438549716253839581620,16642615813361835581230500131246118445590603247887791817817316273244438476256311337001611675388574331977410141699297630317377151836311293305027088331310025109780248001730816502531361314291505497281231329646213545390817348454790771602982974763540004526670479533111992035177312072478629306988622806347623090425003234077873805375141062348645927401285345899503907001825760439541705306585854742931882134500925066002906885338189163552908934604616236359806104007315451823167682352183241953279551520079950202231330492255621315016646701261669501844925563045252616708085163536257987840050252877140816998011230187115088535718084,16010347999096675182232092054526583890655342476048555695134478148077646319292254202928857709848426726687922101503995183630866920756294444357812738165670087524526688577215556076807546011943089084967115014780281986236650136100212790809186133722139336439667178800133917927993914606420172087843235000579778849526996068548810587854703520128067422195406060143205277668392537421614569464766336104310955572146529110182880365088792241394086157577886083440548786679580400292545275535505024808973895871707731827445166453079771165377996477241584002682623055073167645192536278061988188027824852844065261608054572024963829903461213],"H2j":[3368171208877966911054339907901878144315427177489764716664525147952589494997571345476952466465636584372230416806643927079294770772639785886747559841089671070120102511739419185926825275343129268693107584218806327021288882477748577914215697371729166784288283440868236399459954587383445757960644874348547417850473459042890356424271874499317095341286743556259239705095932387025485711185437452734962326711790258196775033662070121656155183933539103178989257156247756946175745703344908852193344259286268186560067884170926994359970521939453852919421341990972981960061011629945378288288327928173529860414633963687461741921536,21571995110918784658914871089233085747498481392093921476006031602493786671249981878215451382962183306832489322303548281716296137774931836883062638257871799588636736223841397596603236825079859053119441636830060533162035824030490541191082185733831191460351456499274515867869223195196735738841516139421749973183291711819985317821732516820314960505801684638233368245136026792456696584282458766742520555425925807015416047178765452538113430822668214923191463369535833443605844329620997852520039896259519774630621573507729397714725431894641714478634392952187074508209560077240054333035743202911738795412331854359778973195140,14361846248841354239738429614485615020817620015740214377557182447187161532145777460980697522328331383902906916852306307688790083451608130261350491455026208295552005757157547049806867066926847972162187184750531821995727255016828133897770613409484181886065535775699953909464798003780913388918153183011660224430464726560354626850573087079518001579497098985920611294338802921392907919446517107741456227975646401634963060678572780580998274987217038988195161229432595476488751730989311796958677066257365863948226172977171594831544011639884849989931328654207271418544321580100757601201270000125579606365984683036050427736901,3320303882237934822574723730249906877625782534310160672723504685750059065549780868692191634937564489497907122877469551544554741543440051593275714064385262048169355745443620314041833050794531307335253819559894664711581948933864857312882072901440293913927021712377972600011615454373450050526995352982830050256391443830850515525775497974669346917338799122924286263331475349263163070978610950486766234107397409979634217974050928014066919223534136219934067215088896161064759214148618049130963680983012705398939807692207987093138939884157043400363128971664499276483693036909962979142844998423058170845192989653278227244556,11392712315645310673556256100365181042182208368042016535682634838624439633464280578340353342992697843456486856323709208993769929825667198124843256857854149171724638555790573818365215224736100981973384410995558183533272266822358013891089919574254939818330873527463833155579817319890250882056946018928950519405481352273564274138745239339555689528027209630484474043328702633331977168775903350557929023233359205813047128230741363083482041365845075249319178793999005856778680811779083784522911420519825713738930903604514930432327435755406403484491228343075922083298289929463367612180095879814334515830338256256962304365507,16128185768089596194287119128971616467728481679140585100708821051566471323843047828854183726318833284371487280925375797724567335316422823058316454263458054143106806709907496680547056853651764349462358556329487313360470751830659004515085115085503406434144518308588359624087795942838829972724870214686385899497790143468039433972576851570857473482249444251166188717970319339154993972583107254198134043017660882069243167380269891894037618164535745069845632928065376946760432598515015966819900477155552863106379035709861023910264232532374352692943776001019180723682584987138149276551856921296644229421379331608912433891787,2216711622729147643119351601279604576561222476671706440839914460051282496368367881534683081378746937805707571316950268212663028051018612966825594397873907399847514954700788018713085783872783310865267981225782070802491186153117333152717062661110252994273036185050571252614763467112197381544773361260703440205625252670499456016034457927577251901944688698835868136916669160283880144324751412122403729270589464975875662168775295336481672192780137765587777958466322897160031233145485380452023766308429956773283861365366429753738225270634870302712702783980696520536919562785018253963272279772947237341901826167911636277398,14567981249611770119460797088791616882610277285940857160650608249425344206528691122331543913667869847178068077135905754757970717904714688019328854767805335556395966314263235325078374161755665460346725642944725762703818596015903905714083108502634334495870792846224658572820537006327415243377500340330706127007814008821793048336577227035431648149947100606065474813247441707074217050761365292856644845629066245995828609114930249956124849463230151850823327413055370077318181578457937246716760725440912216906628033172873929155794447444347775998977195569636526530564164070920144286322379557192066768871877841501668738723305,11562467842115790891804601373773643847126621903349499609152938962148770984937205728801191644445725158989276699296504193090664088648177394705510081647868491010141118677836328015755807190340752111789458182176683494843129204876774659319228937425442946958815453444622877125277511242659189800732695804577042735408856749044867603169231506434230337165888447884043777386886336176295745762185799165141571995448994795987563473269027183930075484844146542824749783851152327060411300732221330038342605240436682988238960554043191119742665518743299119772957848539797927531910599793668616983919654530567233469044356313491217598173963,14001988942247671750781482079375285966547579414294794319094213847379686940578167330959958747320137628734714588973465688779508774703004652572462868416321674738451567199004872420641775754108356291951642382728451341563463073268234897512437292991864411475522021623042299363078178084134670414407763213420631947305174457007699331702204294303015464925310244650403343929391594959891748515738314022772251420423895070351394216428634037166244804545860754313566530581379130190514697248618490807663014153146208137639940027271688234812971813570187637013722635079779830294526604514749212529717398437104564243590356265592707324430248,22660381208680529934440965587759859630365737502029115748369924654698991903261875827625444059798716389150600717053198039271991446052177985348107490095372700835812383361394955848974961135498980301472468398590372824927166661721168913896457190085269560320077063240744390945543298734163933076390800852847268723891846915780866370885782050245477056357544654583119258014409021504561016925378839878361190561580782875056594285065583655990468688145199834395357403106937935824760810934700883413929457207664342072543405193505090717688282434192414638239406093224709925453132516053056802277292184257441746331824932943075086343111278,20472030140330590554727016751322746521411547021589348812503605132754052870300345339453032427074737788538570891246727822818774891000538284023878268779231690147875265496447517546051987993131805558030308294615301233476549529141133753715149811029684466002817709334036803452074715441881335148948617848448549417354051160238759910288354822541817903899839091496273435021826344319441409806973908079330351993159801831003550379943098083992503486981995525990398355622285332802868604496636639655839747683821735810491234886789689703654299736502370849656509374303361111199544583501333765966424789805698080099714702838932727164170265,2453173651401016059883376082702788558595819343620938909718003743834761063920578770151771007440124157356829685449240956671627119096461094862434828440771694576875873539491082895345114445338009283914246401641276451109273726841868022516636570181871922631150553766823691471767095455577358060583652290109547591748476465162423200240371828509110384977101559949176482932811774533277255627251591525680337416653414697852938946477765739575989782561041133771451257557157756072849234217247160968445068150218106127891386897699168070200218755068578136094949985380806928006246790329032200529105916916706533850553672076045608730359951,24113152339438360498818613385483602121911555739122745946787379178133957345957135620586264478203421944425299426192146461629084303328006516447630615633641891356240907180660156167532682435848933370915136668244592305335752238307655218128679169067763462102575980085156721937439825798887974559139719995948680828470417607776837167245694714142889348485597791698351034577938495332154328968099025912022930753095015877561713107591709857548795164690012791766454787725487399290632750389338230767552797412606609844617222343058516288469384643892784348204522341997782682670665258025662990169755315957866286658684293611644496873215267,23048127989879822710411192866890144848102725506107457207672066933390327615164057701868652098516421397166175276204189099923035751642625511125320886106285613893278788342927698548384268560900735111168363954600824026890037073968715675372129633119593307084369015870114545021114363768521678984746381386414166722200844864695581741219036038918650136132423598216731404838838590398569938445014697553573715959930243891120229359688175340044395042982004999256741864583061848148945179825358319553305735497035945950407010348447423433336328707080153581767979294379351950056937128181379551873194994067035954630194182060875682649437666,13618893464695086149676203128264379703835247962620883770951238013108147463339903484787069986025297587613907750851693587285998342458273645890621629308654871877706080796956646324471034007240766614380367007821000885398439611969420081154359024999574164769946112634981576459912811818772491470799900760145047753530968995478407930477477944129573287306569838212654312701822189291272987922653156057983889008935259264244527455188704827518079129994488508788103513618119832400499449348458232904888661877972105894911067928574676593878643851258312142433749927142945806711403413926146774157545099025460329680057003565864119710344042,23894029291617241391144328899509691451082120805949912944383938437120322549284785238294999166576087704069349411280857670919349460489513399500828536265895125463653495907166485758411354581066514943080277665731467417672021474933030712874768858153808012182457456133833868682464778542510979705494991241834256525297885337509013426009068419788422403698033836643374538850826433098217327104341285009528115639746062522009884356634868057714134080806096522631119686584895158882950387390079669636785522392222833493980203199840117132536258676406629318977553433626720193118379634005263005358473104730141003648560474105109737111011794,8925336938516965008397109104514048184046286665452569746388287155124102463448431342748346308295582163969585477123381674515410213967775651281608577967919981280923720344420733336038269189964575637162708585549385406099462739524026684819607311522399446887121322482655436562521377082292558533779186792041587188361186852658931953312216304602575717772394803653647861926317392730789837892117863267885605817028617970756887793540591824273228108598874261690153175536884068161483807477696239392976829822163308261960542651335245650622440817598987961098884462409657203750437907285145610244236094931259734945402603438305753971150592,11949666259971918796589430623190075546810486453882961593114781232790528357171489136086300172564872735213582648459678932324553671446193373613445392996846768949427585353892225809922873734606473958012848905522095066153323414491640379067553063059327565094898320425802881846169782611727703042073646692303198048486923691657532734229486488161759607766287874080676488615866925028524263799527274261471472615111756048644281578781133899646868101860588922113737985515123939591333283772116702698675273675787772365936701715064375893211337204849804346824788133348904362412793959284749560448461044309070434592388006426231060171764771,22250566339370324059402215781976249391077086920660167269541657986285216346026428267640441435642495757683689137264020871118649281135403445710476580606390835296225377720486579495200200373576733192798872047011357659910138900430140520045889539388154712432007987497852789128001047310532391671755193946030519165629053752937739899959567496721448943588557458516035029605073085115080892712303741049416122614132971525567297514147438256957998569093867126816514230762539072531021367441808139154778858187018499802649090111006001230394761758788797026721593274233504527845651968558769656875733771044784061166465882679811351871629592],"BigXj":[{"Coords":[107932666477475802631511202367582748861519739569035537904969017494701526323818,27810089900979531039053592509940878404833992140356119628629019981009106058899]},{"Coords":[70488850009775279003934303461546816167586319901288720095232797816893086714940,21365158033407193885213404713050228625397820553043856269267720323259910113340]},{"Coords":[96704419145309517259142970140495022508494287400107594467439362232020961329299,76628584944766298203991062873793502752240767184659143342509677627090500089962]},{"Coords":[28019161860991754547254544009397503028608838172584402384170752184470432984674,108882834276696603625351040619123218095898824500661874818668494090573839581587]},{"Coords":[69854419615803608419512220164651266075688659942948825382651503385261699188382,86209865999364219341605400066204025416938700532196803014526015416182305901566]},{"Coords":[55707469940275855599640808250448173151230633312005616373715718152006593734016,71581471827456608524472614862044126332419275513283203837579704443605501341979]},{"Coords":[31537542564214197931115404850756486671358385103785295421162883744455005249506,31003647934233069190792056145926504346119044635106496026002117518163562078840]},{"Coords":[71459743938853567115182393388387842195822211722537627655935266215390092032802,105621264392663357649957909617094860377111556629887291515711877643951632476111]},{"Coords":[100170179262204638729042299933877814060918019584852761639094198183345507736585,28900877763089774489040863107152228045173480683157331262486804734772631569442]},{"Coords":[3393930126761759176345687233491451168543634500428196687848693751772795262696,55773871461934232294712308387072487465508923595028614508001564000526922809830]},{"Coords":[35436174997161384450863357581481493940397620545951968086180770941965008242533,22941476771782647278770334144010957938195504420883358055133977993491797250976]},{"Coords":[20742591764203230819083960194719627433799141307841650214987882235851644570480,36792680781195360005281832466704518433303594582044389944698351592636972852101]},{"Coords":[78822613167932563650341174247543824338627391764838115664582901884987316485415,29305611808246076472515388603014476455888609363718621630903671994111327870746]},{"Coords":[106662917025753316359017201639970683777210765763056751174154469380644107823988,38376047705320523688829546978146661452201839032747402442602961204420046730181]},{"Coords":[50131378328647772110850225682895027165473791107252577081428683178756073747030,6484525664721285218064077598136507537588284647694850022336064622644441747313]},{"Coords":[63814576207919556970263190432671978386229401573575575774195362165468317841987,52351921007743438678847732376277019290979039258214198300788054101141627584484]},{"Coords":[33074537919982031116943260590723731125144796968052633499149040111855190089892,52462876494517613825042650703891412581466209764861573326649361336309483684004]},{"Coords":[46337244846970653814521818706394664913446423803670640514811670889644615970917,60622380590936530234720907025041106487069869976400399621024354043945489694205]},{"Coords":[68932201886808999446322681662607675293176822755681592496851252047161893154617,102558540543641758967834783938704783088913683989892796677072783324191846467831]},{"Coords":[47093684301174743530406169926797075725911173707597448168332637736184121729220,74517549523358620639964596401882412428175945976473031695393603496712918162101]}],"PaillierPKs":[{"N":22709559588116531632086995360614881758145847958604375585917706994116168375700793376291131544827864145364687259129107134734036373558516565338923959924703156876435469021413354399418993619174071015237246272863140297401272631661028437511282301913323857011886496541494453371682094558243513835287198378640755589750985308457641295136946180231598093936765306071278862423297167033582450972276390473663053961764398615170355333807856718875047329620163477731845253445115727590642190491372191245975524943279344261890117425706855830582201691939059698357650223528988243289388677629074389631868130733940366531485671699566601163615661},{"N":23443957150234287781524191819714980056334495753799141564738532515877512840928595615570444488815473106829833471979932833846134743028112638013245259429585839683894162551870479232892081727695293106142145837752188330564435054323350976552725925455074206192778580457152750035194725712966851385101176362564718763658489874740341398176203077931510475924742361380746164713522692182335455005818339528332609035897638651762193188267900136476551393608916669622907100712471489443414455950510417300576764177277906265582678299980344888299166427651633758323734973558749488731824311505669417847053850760848940423643750519510719400853833},{"N":22287028689259504755807149120904050002396020193634043129060485604472139332057712093383073269246020913354970143960065213561811698182428208504100112877284663913440710058603853492628849020664094889598583038642474751945815658301741607940280803922553940685657785019086609257141579057485855668397778602262577280637009340765489166395694519909332104264865369924039797553524566502151933416185073911748303993059047774791584591703105106437459703251723998725467328206119091524784524659754164199098692948259716816125731645175450298738430174307931086107554346505367596601043514472572775722114263120820933996056766066990263737006037},{"N":21778455942403717802437188616130445569467912356333711523204106321468333958250985526522676150458521139952234508699903096368286173136552336834061186195705878795885628080532376972447127537374960052755412900354192740274699607194495256559382391407619506149746521336051948176770581697936379025338953179299724284866217851767053361169462746892201032000776732741861429352495405542992367041691709412944529198233031428083828538853890568987466209820731450551650370292813109604532198408719181905952928419308306626664706489746484860069309396704199131581338218405332252354539932883923534658047809067343949198229794022084007329008301},{"N":29488834801717020514549557511738862835006604218586783270956635930974777840977382736818004943434492491272083417763033198615963445455042431681833978353867438176815774128330303688651059852719975859250721567522453513175104614385098138081209372251486732213899964978141377939387124226524201851559541320231331748973500724292675746395999336271645347092285737228923411234511145980962423027637945866866145915490526131803713409632083226573065035861386075817821231913413262072294132940186959486615122177174171466978866072639941945123654758187894442697758141328636666389957637295324259708835849664958476600091423260629670847006421},{"N":25268781854018641821625117526035412649921406362359871346957405856614663043063881662682001256500050697385215601589085313282671061645985003913281457834036290368462929918763869754871955608135979298238482437377851913552755913815405018774915484866488142406303297444296659799278477225336231564636195441498040062964451813900346208766721654100661710718867197194733579941984196715209521167970358227552984230489600141394198144474928084583860744656840175887777161454380202188440178263993042579519816969496156562013371732648143667185817225623397113488180419930136011024805515953457443050643425221010148081098971618629282508806153},{"N":24077030535873838147372990238338423111894661719881851208383511932936303788667059523325649062922462968249640702042151293306587810036594125879862518141403476609262478705296844024060273562609291573351215091787555942245982552314643486135981274381916357213038852978171063476276539384812002232533351978097782562939609101707149234139391638125337919614533689982228496010017193463462456934753130533077727108799001253943486336718218272844533405886783727956436625979626270665501149887064412642510585330023269746464208739229956710668053204092869919317416558618819105166451453240320574158658174090376334547079951345889147202424197},{"N":24121210025310295136286367465067731861316363403302816495348899075683542883649267862423504534408270521528934904000166037695519824119622953526124849500602533136680339478221010232315859804261374907195769559713293619918530079931895046819311703445607618111244570268187554380693098539122537784889700313005700764528116670706472264450599583329582635827622249925780628859318211609939169828662135675938640346560681426019582628979275573701346775265344080547061237809761964885298244705276139799178175782218409921284339726928435810584460742981474010807766522632224843035722465220411812727073796692626221078545796203402892726398073},{"N":26956782591324520026471701264974010002551430844929064558517606333109244333104364565707985261498791802440691867651722784210280888161145432103606824079477489895607158911928686613189674072708812330140444741131333062722881890279580684791181148664415766399323289281546841599984936640417820094077391333063403828290767644884268872176714175866593843027335088472731880830448148161449695591865312724115778446298294191846018327598860718546463796845910458753293225328770367785304521228332493000905274903063796918859478998380272311510096333363160486944174426731511854410356169028732110892177884127982236790065871058497952170624401},{"N":26249557760815986852034237905417683014048371748204856284575862917968310785883486514046189771449794410062311941320778404041317694258818896788913080156960590072834802977027251267292982532721343074208805165986815554608059680417209847673748867108719737464989377176319950884300513507127044766841349776517208994115342645229445634306184178062065483947743824551463650982111893910449653832587022792656303977671598375329018430362166017195461057586254287305421091325058340750141735758488815547176349755224428765382123772435956499576803085012124378000542928725389368171404677133866847871236251441021957443853014282022367009685861},{"N":29234737641692976595774236923019314216135921756073342884203680618120226690739166288052322806435356115092650761656136403373733697692050475566331202817414926309882834844059857181882811689758047525443057988160495074334079542319370840285641441603178202467820462588826229922786870937847036888109767951604636584098102615282750014508387427358079100450062680715472456836097388046216848854107984658532128468648705497171277133763535425127577293318939184956565230142817502839346792604559307183239212332206857888330805061669830296766718735240517983609617995793272006065303892130080909658027060291496416496673503247698087863812741},{"N":23656386949781378983561509210223997485938600678969404520355733863050336777307520388106184053630795530040934267843013912848246799628076757878172461266778291537251825140340096706161543161977283845709058224884977213986434571463756330276479208682952096086332163009127424608568458165322976353036562065434426650045708578336603634894217912009997772105108262453019882143577371634194078714264992380438885990335741008955488808069468796086801023973076920357953123958081822096146124559004458043648352764252390085772923647155984579633692639191141425745475545839873632550694666801559519849238477058285069280151324843991596401646381},{"N":23799985430892428550287426639163393896421663100337917557737015159273107046495772196531619480943457572757018895004491581880198797117841320493538657520011738472038586707181276745476787089472101888983238214242261897466709975139313526918983914349699164310009561585851364405464439780111046692215844366708075439030620693316351016954915727063684631173044817825576871464988585229583331260702104268887569088888141481975510438061934915565917441018736997897082388887244599485050548831301667982348795441755679549415459512278548728977097478254566801983960996625453970296380670902503277224729081061542066926552900097298958795919921},{"N":23398981485141581657111580810187356464859260220476400872431878471724619284703169207796437272649895475435460945312990810473873577007856956495840504596329080928974891464665270653430872926713471055976901497303072174459471872022720981442223753911960555794844008812776454183058593769792366230853507105586338576934054995838272457499054915439455088496111012971850904735289245691042597216634196809202787360353382667100073960437339209464655220130141692780283364216457426778903461083049390591667885095066567970867147659207581183606534554025283663685502553767113396678790806758816850832944906936477595076662914396730813902861273},{"N":24645804484208008107774215519843481629641338685651268289287772114412526440944111199969614165736177320304962312701073205538949325003439610780511806547845684862319242490345551374064725883323450769869814834613757570218276860284970150303912936880248283750218053176729988470901025014948637258535944241625099061769802348376561541469733700398108049774899180411488580995483844861534070436865153589414051441506488195269353530135159150725450897767102214976100194473384482425657735122085724544900424323758582364844065404991831422328546732900258700279735848044809564185617079126240413557300335393565946088211107690073344594774029},{"N":23664465666512928010084076006211208070039097235865486451752383277009646489200010451773766854885315852604650109050180997494686499532996982524560956955784208153283884502900612829692080614937231941501430129101050170848135543483642879522140453631883679490750446245717832265221232589489474380464199065201167874127465810334527670252907568617820949350516778153996202871756067806159248004814563340677682071536108582393686279672503548392243690499337315202892692273695083478754736347613219568092769421161385508903701795824994052294039246344316342377047969959511601521901736714883097032290625287691937066549723767146291790114657},{"N":22165609813091667259068375406991183583538522584875908765309739098448534648989953434651686788146626220283972510122914357995219529654582068510398362007031593307847827533082059785375352080923687640731375327188268078188971415753864060723639564145551626769223269559344648109409611860616931934210627553354435590764505138165455042290624193631088250055962033560484870481238850988856340320616852463026890656813658017413542014132396994215496811530247375977104307808133564653689276479112825279061966541271092780066027501498091088819663615972345385914896991989394778860649710938578818683661928070093400675043514978345177529652389},{"N":24352137164919775060505902875895344669551891343219870713119659495462675754712808458066602996522267529841963340495194383402601416044030073771848283771276922546693343786778909195920195728052430645791682092298169597213540403251589258864324656830830912032021695409682689693414793104678019843226941004344886835923010707685858497420014814885662783481710790760565625597934856999445792014460533464855807508832344902590088930105318969772303090927340774137226985715726042801943592444113021856673268564036683304420372700405680896320106848396385562893886698977710031223312091933030330629827691164100994176634674536649129152931477},{"N":24388425323514301995345880181969195093222141730097776998750148283180811486102209130079655780738706237274584643472954914248041737365215477795339570700387683883122567928523036945799350046333477704674538444513982433086664207664876244841911099162128315338715496189423824903190803189243082722638413039421880070666657272413079871744422617706188003161639646693501252928939859937588136677607569634910081471599993513483449765647227570734163189729311880395414909879933139619835138785852476313690881562300854512419432999005203281002911021482679309149225773391703345476483158302622073477221903694296256566718995262186459619480089},{"N":21604728584405813409256303272593334134333518895675489098410576803850613670962405878762275711641486977471395420657043551402890823783906820971712770494973201278527635005537714974340519544361402189093858595896231890523544098157276831993549216761475195055251372273062282101577640320665049775934814411518181030603401788639796770568692007642464803606076672769360069701571162199680486773757848273630254180550410784187377722267755203781450486589090106764541644204842436002216866597611146281471192249537747681020939314396157603364418120170135828923470079746789793341042476885118587449440114091973976013051496269141578521399429}],"ECDSAPub":{"Coords":[82191134404558877049244897640959846424169542769967270904890689024123037541855,102677683688073592669768840687667774566029618427936181452214529135934890152533]}} \ No newline at end of file diff --git a/test/_fixtures/keygen_data_14.json b/test/_fixtures/keygen_data_14.json deleted file mode 100644 index bbec62b0..00000000 --- a/test/_fixtures/keygen_data_14.json +++ /dev/null @@ -1 +0,0 @@ -{"PaillierSK":{"N":24645804484208008107774215519843481629641338685651268289287772114412526440944111199969614165736177320304962312701073205538949325003439610780511806547845684862319242490345551374064725883323450769869814834613757570218276860284970150303912936880248283750218053176729988470901025014948637258535944241625099061769802348376561541469733700398108049774899180411488580995483844861534070436865153589414051441506488195269353530135159150725450897767102214976100194473384482425657735122085724544900424323758582364844065404991831422328546732900258700279735848044809564185617079126240413557300335393565946088211107690073344594774029,"LambdaN":12322902242104004053887107759921740814820669342825634144643886057206263220472055599984807082868088660152481156350536602769474662501719805390255903273922842431159621245172775687032362941661725384934907417306878785109138430142485075151956468440124141875109026588364994235450512507474318629267972120812549530884743459844946670628141842555582826219043696069997370952761974859965864101655358043887060237540594336682418610270760010821630602122875681329067088366575922101319134355601325625151295096964167698855063703572590983221816369553677315993224529033648520006533396357410560081467394685741374902464725997440146995129742,"PhiN":24645804484208008107774215519843481629641338685651268289287772114412526440944111199969614165736177320304962312701073205538949325003439610780511806547845684862319242490345551374064725883323450769869814834613757570218276860284970150303912936880248283750218053176729988470901025014948637258535944241625099061769486919689893341256283685111165652438087392139994741905523949719931728203310716087774120475081188673364837220541520021643261204245751362658134176733151844202638268711202651250302590193928335397710127407145181966443632739107354631986449058067297040013066792714821120162934789371482749804929451994880293990259484},"NTildei":25781309885353513172762417920559862373653633766198016154431702305819993747433843312735651525316421555779956949217599915608247344211910767561492880228357017663462131839160610108626231391786518524635537763772771732022138542377442385539024671393136972077400774477946909998449518641822004119697621239956294809097040644518494643152713366295240127317300380586618659118989790014789381034410565903140125870883802621234783419468923863900036725871332435066935174631607488613764393382263135690909855298574769132391272005233712859895795189174927584736869111985784832037628893972777670733794612566699959726190117505644366934694141,"H1i":17663259858420311330651766819499911841067663794994694318257191199872170158137865025958007148817857781638492835306514771303332749042829120815317355608633338052028835394702531720709875380635913577846095483312528431723891955957026638053673584169905737554185634030129649039016018518994356839547241764882921390944931575304729587593422442361903863687010228628846862342208853396044641495867576785861723973159597871732538239253298128840563941065388954934551651787261972744712209405583851147359110032083949020208533161960188954813739180009449972293158373021060141688387818302891372350131649013502869609299334048318236045598871,"H2i":23048127989879822710411192866890144848102725506107457207672066933390327615164057701868652098516421397166175276204189099923035751642625511125320886106285613893278788342927698548384268560900735111168363954600824026890037073968715675372129633119593307084369015870114545021114363768521678984746381386414166722200844864695581741219036038918650136132423598216731404838838590398569938445014697553573715959930243891120229359688175340044395042982004999256741864583061848148945179825358319553305735497035945950407010348447423433336328707080153581767979294379351950056937128181379551873194994067035954630194182060875682649437666,"Alpha":6483587830794552084709836083507998461633931079172651124645577473139533192743659834398659246057975730257891170676694927080997744277612569269488097687118255320617276526389739258404699474380805124225560838534017007861406906282006628398153647218321402230898247635939078668119671534302404189383258719185873876621058789941547050497169908594533625449261251546514568184424387197302753025745633054524781280697549728684378552591026804239050473848528453822225435044904903358394499037607395282685914716633384656389083461508696337961595888330954031726053619349998864808853008500268007828939479431445063306634423062410179734734758,"Beta":1655857285525358169834377077201077823663282993504665416005319186334167184396125892995486445357540003168932025238784749218700788518262558661921010473687728317061380690290782268917773865424852153126821819661092932847517174025406119756088581314791994683205351846870955273476873173352175916622918401327645576833882175223516249004262198041978161411282772387185934606195141301742641623173589743814420027723834649127854324485818625431918176753201590537981280880624956802290675414847949345901166372974256347805050788099480905408676165284383725903812392688112696767074924984673169677056280978996293928095287710462160531729361,"P":80086445744255834127397762328459395597093157599857211474355364186086088479222718343424988120515323742710442698544157253735677901644471566973638229592800199135712727362896762480736915348143095278873591919892660707764626480845381369064809530940524140041405840214352950849892802814912910552803727256501926050649,"Q":80479629373496908291469808755318447962748479278594693404256322077308829112216300235508258282616912010744196911482059192115330913580490328805672932793908870575641042404047368546924194766141550330478460007009990882508791851847664943351341439747231365114361602319171469362108294138374515028905224650829790766279,"Xi":6209658885970699075507225735109810192616473444263436996982934448948912832944,"ShareID":70024534756929667616115849317753032895580033020239899587896153938577578972763,"Ks":[70024534756929667616115849317753032895580033020239899587896153938577578972749,70024534756929667616115849317753032895580033020239899587896153938577578972750,70024534756929667616115849317753032895580033020239899587896153938577578972751,70024534756929667616115849317753032895580033020239899587896153938577578972752,70024534756929667616115849317753032895580033020239899587896153938577578972753,70024534756929667616115849317753032895580033020239899587896153938577578972754,70024534756929667616115849317753032895580033020239899587896153938577578972755,70024534756929667616115849317753032895580033020239899587896153938577578972756,70024534756929667616115849317753032895580033020239899587896153938577578972757,70024534756929667616115849317753032895580033020239899587896153938577578972758,70024534756929667616115849317753032895580033020239899587896153938577578972759,70024534756929667616115849317753032895580033020239899587896153938577578972760,70024534756929667616115849317753032895580033020239899587896153938577578972761,70024534756929667616115849317753032895580033020239899587896153938577578972762,70024534756929667616115849317753032895580033020239899587896153938577578972763,70024534756929667616115849317753032895580033020239899587896153938577578972764,70024534756929667616115849317753032895580033020239899587896153938577578972765,70024534756929667616115849317753032895580033020239899587896153938577578972766,70024534756929667616115849317753032895580033020239899587896153938577578972767,70024534756929667616115849317753032895580033020239899587896153938577578972768],"NTildej":[24366917239515824974480442558600034492208859976504581465004349103795399783288421050831073024860369440303795551299953821996018530997630686285237603133194573622718124597460737572013930327249120648302190449742363261573076443183981343509885970573178298207488759436277685910850783372123719807298277837194569211839837465137044422691734879346883675317045008891659749391963717253895556693016508386391015178130161988317310806894350108084212611277788190739249760699147435109968242744158314817905689533615803297627887736048945645075792686416602832677541152918424023805280241226851534199867283487943291927564365275467582581271053,24760645214372673899925400730945520473062951341429554908754617530444794660401836428698520741646966955149111758288194803110363170964340801072472223878272430220722034553855593944561986134993071918255771235073978495918874383067260043443905506152815841034811512510858407909698555608803009379935760654878372301870950275270724586431009354962811874333750886958869738872804882633350285507993032763679234057221556156642769183354423672540429587887851343483914923600996425040023829456198369968692844034517720322057627565080062766276792221145223750390964637842847390939964073972850018793739320669513533403812272268817559996728177,24335507174653830446370401218472354012341984065893977351232759664219171991998539382418393419142907217562914494098827810315198583692551476438232634594991137003295122745831430159532586451010818106345725278793436836406022036374386618877645773128457664942790386603953998246404350465143928182109615440037926218085391564421745517307996722808502413850991173460229650178023548969664557299385141472097112836353938598657235574893430259143862369227601052831476146199261368117297723539373329843815951236997008000605506966102265798289158763516254914284024816124992986001907541315389832578466014006010753144367487203071067653140017,25353120959776139123294155818546513426444543204238814947681743626639583989194265533184090862296087842527526282860965927846515276605818147773016966742984780344247645856238734726222917730082852005118152200740071409410429096265046046476115230269737050878141459099734884888260830179970728221214610731604157017545322535971152193773221758709395769765431078738204491094323008301356895841037132747444047830530409305765562694358003007195242702308043142399969256485870876259711230128209178441443167004632638027691911658424285106297785382963002590496015895572427776988235599297735903480964253948429971597628412447354914215359401,29849885402332341621158797110436829396646924395042456662853244309209629024048299162272105169817115314715561658954210859089958590864101117136365470947498907594068557026997249170993874294161892140147876022164668279854630146959174794473879294364568105935870579392660025720467645329300426773479121856766502569984218591054914763859996476236063750210092775547343099066989888106146219058807079888624162205626100491953381078296178689026680702514982189001052448223393538379392778307314168895065497502603308074595916000270844935723623383768691838356870704054233137068509668072099435779943491520206735659166266930856700483211181,24303346306264095483727907643814355785838936488512300414348142784703917728792656928355740144163123550572150171398192480623395181408570425672723511597546032812698562984141032629389936754449924613948711482870260420456913877526422469201798411517711928654451945040790337077196569240216228957228264615761147375423719114756511538399142649755527243797217920772594702713281103939163745422429156605226253637010451757984598979666631182977221341184990723224510127460146263007980086670575857365789365543477249518437176817144448210584125518855115672157465775432933601089465408090382773104140011964681476656187299047937685144419517,22663176204438991528847068755997123453980704364589354833944958947785385672266299429364336994892902925142195136026995771544990684289261678272550855925683439714148609523477977179010696117909805695701859018966669150739407573082987363056991238107146673103957237104655136409343763639221993038484198677605284199701204669351878989982962102150055730219424526668206392140254467740757469800556697236694088468633665970603098311956910105499246381935436511205439918717236853087415401432056630404175846159692661637004967185601880460514710913037913825633119857629058574151126418040291146967097319384900092639447317903904481362864461,22214406206988221120543596573138808869312423548073528052574227838235500966558488375856182495656208729058219131190228351185002058116343873479198633895772314072671413818939926736318457089940649635331152484030046857163634723835906012553106874988855844579826872824922610248380139635284283310239564378546105159549071234915504686574306652852285495484227675227079507874801353534124836509674143920296971261218965184384289987323806590503991373066703353411925035343072343417173322682200148341574699074894310006001608609036165489022667366737175975429277190015768847957906950063130121905159960720849686267420829596753652148430921,26992054981062895613627607261766199835432715284801801749398907129229048796737348701447929605174559094984645968238323112325575430714478210726667128296579144479334211667227791506349731191531989884599385537951555136889431648507040431760656554949203843341649040209953028348323032563665739842658324687215759862340780391326904566525914822596715715051383829453805370490781186878600411802395931887164480044180689343432959074712196207660797594065685195126347713904229309636698471250350144098081500570797555478540127343168177689831999672573508345263924360426808488416307292793876390765153143370885661040432948994217496537757037,26883601429347938201866566412436359463282736845136879263977010812101340295160083165177085686402734295128738223195845941394861534416081222492334460738589328436684156816061652087254848610272225814333318089300032442695939753398569200283276971829978683842747584203047240258517693679059389343721225356421724973291878661622168915849085533925700422984364421907650824486413330797840743205222070155228532990351439410717713883609930796830287062705670943579996135308824473851899048361474382520461452309816639861239026761274994745411785747289015653392872405877863169928875880404134872170564729075194783267248873823339090853461089,26675898204441883357756938810501612911006923314113656530850642169244358619346060171584915468088311545710004060513299980257359925141562861692364285790755062927815783069742814310907363159744172010043214941961935176791603921250085454102936917126214113873120405883118273636844903335000473865105148550590214462929117780405311499444885924770449779157142014006830224170685309315154438797997384633339817640551850145502452900467824909085498261391267709054450200313476628713250795473832792093350711410373115197160491274663551092524073340836221397352664353235247831158949819050115215290772010284539607969271690219902603821582657,24003425727589170532663869192322030538943945148822062399216337010945961427378027710524236529045097740008239529891693854573603730323074574387306355517555029571396270483790272731994105657673718134894396083438028861748333502807033025075738141563799251049728691667635160338770958887288469952328987442729682278796947289053518986771911122562542149441355230810099948748099507142060010177281487688268845292432759376770532767245812643377347484905682286529844081415426101824234408564247618590677966518836555327692461478356122297916534505785216531638872958168430321684571355170353352724268927780693184938724886624339722183259421,20030939948791694094921106997836532434578994294403521371501479100010836848962747077471607238761388497679145378822499150459403963802326636975589780084279335637070321781313502047027883154267014733038805978970710176410579107929485519779112034850622531520287022547371539439386174878773544830750041302618611105173361798826270784808992652396596786821436733488377837349284332001375201088424331364286550732742247150161681889289004480841207149941594126907534285607712061943572341899739867922754683103581617612214747009636033814762750497302268078808823665919929249386647148964298452596399586628310864464196272071720395192133489,26870132374951553243581913321377246229771795848056596419360924847337540300978229013002723427615100062690126686631934134732102152941473371391783556453709425066357685692036492637888980565254013131275256724381428020710512422112788440607830591932440438849890272166273212125255293837259298348084558313308788645038416611482549103781514142985867750527012906984385110191046837459757808864741583473057341019452578423080700589131792924736182910584032669431737863108910781465411300404077532371983623221078943741087750842713540302692591604785862604978245628364756611702919842339423052849035969584933072813435912401288087398604921,25781309885353513172762417920559862373653633766198016154431702305819993747433843312735651525316421555779956949217599915608247344211910767561492880228357017663462131839160610108626231391786518524635537763772771732022138542377442385539024671393136972077400774477946909998449518641822004119697621239956294809097040644518494643152713366295240127317300380586618659118989790014789381034410565903140125870883802621234783419468923863900036725871332435066935174631607488613764393382263135690909855298574769132391272005233712859895795189174927584736869111985784832037628893972777670733794612566699959726190117505644366934694141,31307948529511772422092081620376528723351660195178245630091738647550584183808045529448767036136429258045017880313805169530174754560039519751935200016137594525166410173049351154227454247975670642857061354284229524586536451868860885813714578893448403685065908393856455188372709054731049692863370865677701391460552630927498629863324809550335559817235997586126538332699529118621351625401581293898546298753212618743290610874832103267345624474884402930254336353399762494911879332332316505133643206864735435683656288655072941785814640312959405902536938955107787448304325831133755028455554235924936888965889253927315459519249,31466961232199038206393986199348595708256863299176374148227521484010795684260339468184532260347996789772040097386032241172658309499404470468218492541809815234208995118730337303514831281668817831605535229415260143432704661750281094187807328676322407373913844432440683972812394664524853699586055958635280164067281091412249301309251915772998531080870705450343112678791059297982033179252277552572737658097615320288170699408198262523087724946180097295208523307748556241283633289461565623961341136472687878275672606572269060361808996126027608464429012339688636176786148346418213288770613540923635302757146988963110333316781,23282315206683722596094270562333648753439051790898100314922005841725502497093211800334393760989042727597691714582193235713639238284172358062468387217727181092939568556559834956352385929118617242221861532950969685568622107078283773942779583910577282365015752267710687089071780861330758005577221151609134583129504364837341221471368611555190375227501319216183854908348755278500330379812379883892909358375120467449644585220805660246421673078936109889143381498767668445860590513918867961598096050612727306953235332046855083649560662539716078578551485777683734466740521988744140757231408246451261769915726695959921765032997,25091337650425677853684475917739333556784369056148930585749057080859640921803414967035499248336819782755466354804640016025044002503128223804670636762370700960312352761126598625504662989187540799606658080278007629478214427447535566556662347722562243890754037326739900472696108231869156013516647618154210840364364919089100138905499001603568088340085110153219085814807927945152975657929969505495173887189020701090313994816079981109190512102678874334588894915787220152560380696231794377692004958328931143825599595181025003997691503128188855105160353707735893011124272774335559316106266020514461879401833904958202494061001,23827659784682250604442454473547796888740733968924087692522596947210995569582513002946432005898923676155984614087332560259943866897650716815951119740918614656692843602108809220144973266843900928325168304104193270024169252614460073574472494366384192690720704949267653372513388389564250659367518167586555169618994627094576635848093242114762843534765611200879960614166650643590955853799316870443339993391685970472310294098785089036360647811365521892090305001153074254408707786436158648387047030717269669710808288303673434511182840032065481730245714970751088620360458026112893074508503440200554493648329036195258926190733],"H1j":[10024025457847388392610646066298514243370787348338532750631360639913721829629888261433439914402718667116400994500512300775136069581637894623537510481269716297031115527602912311323880048384727148486222115704187210174101029381357780998875764924841198846224052749406474209451141960414618133437662859572202780961023516801781475926753784006105642819239485607653090319392184244933555747381471676665633830261574288841173438644814600240117247473386184548108338325639763390271130259071021112922069642676901166841167199223435257080313456925802886649375691201308332777566495693037805296244451983094124223174758130752134991251259,5540062908155010932513159905564312164946355979316528931149460136278288806659772940588319017326328094974853633874382463976169195549392127817304835111543615409573476314059060881338397061412436243810139473181382772109210271463439624149555390649740374635589527762045108740275882849527695527198385706268316952416235237543464363519203592980469637771074904708426157233888490918907104014536294284692202685017252106362206847500376336741712522098586355602155374318553270307953934712780754034315941245597336144803859821983984428471938659224631751193248483706020880124594451403191977963618445462632103562894369717754678411970157,7294264017980791887588541945948527964732046841763268733085682296431903566128312881527716171471646888128877802321111011007465120561544014131687975703500639986893207003039277321438260744935109724584373350656877837682253991859961109267518971621013884413991023503512551591742311046398421527897782104779903020623974791981836764750802585775470044046719785755322826006147242995196401054126149520747563133877218253475355114168420889541015916952420416242677374123641966631897855997275959219115766326404348502491490713975699304986526310844436386187304302850704361098476666746013218735172029033252239873173053183420490728457969,9501218113444747046512167891740890620022448184208745016727575118910400114702536042272711158066289559244823855716406559728787015762712355980741317225927051706399078523944764818407725281098361563758658548109686452917704268397282493394145905917631338144130662786869889947744035847462163212831976185178442327943506290185820473986106267053867388409405767987475830498385924106417897644176202343305711004215516685101951487059182051580662118563531777396290757514364141633090265347173402382594862836539162320425532069699769291364183133350523773491418365804493761877536170212947415911627316964969637971056063543234131063060179,15798786414829945409990379475347092437191933825852017565866427461531342919124334651290935627606571949258216191049074056902849155877229528326934734579833314251986756112086465450838437292200045064209850028597082873902388658379469441564667669701765841537160309665720024332706155566138689213961078587239980763899119769146527020365437175547591597253422987241897416697834718145603044863506510817025716990741255205962477142190641478116356939618991137525950385435749637759382858607750867147376236491183474725313362128439752969796168290272602393139910089130691220986679844969299810559606706770072567820176650336982258175656069,9335293725151276608993402038690349490322365392613976918346481216796454921531989892317554215286413208524498017721329770260220214739976276463115767516661469141467987234112799014449837377419827917305931640946522287484467505347102693011074644574833321939291182991369361351550845549986196632347752029739003400876962371840702829213086378506709453044627207644282674209652698873675164479665879605315024759424379670463637654094152277916485019222649587458037242630015801094579916767996040360006216068355347853880839844214694922100092515535187976540400673364286904799817798092386690711558542096052961324458158162316849747049802,11928753658530568234030789407795275088740952723187227006977773559909074576164921817701724786519460916583196165018163510774039491890001017299531322520325627826211812869166690445989428530376091680807701566180854522056382923625327483414081231404244458202347765643506681512770879868073522880161513490523543914681148241833246281106290736532685240004675518845019764469048182810211653160870255293592651339935498048137995182398802459841631852186888112285076188858851763824315081771524248572039785549974159773606819792419731561145595921289694471859455550756883293661073453125644271107011011223441502328961618975292599286540534,3281434421303304451534752490245528887879239197847942017450979313729063086003376295872507109217827492860554007309921835555072782997029442232019030164252143769859146809734506916627953872016140383116721175515392391691229687480990552997729334078523811275423771755788388400181281035140972235710503768780977567025805917901565574387698038208089499892809008311004708551092635216129712077377038639345772519472468677180077197280667928734700336917165150723117546746441573171713790905181182966896063824517476166929486302044010896828146903022644169171194514314475627079949830761751962833520028060036397259454122764395181619471620,26798335028033483015595995885818313899416775173626251303214746152969095667991567148306665607431284548931904800914249634868412622200397325111043206330920355980127737464934048444736064518743501106031852408038680600709174828761299003903687195970226223339349891916494477088540593890862438659139800883091968208023580402075789145180476758769233643214633776274238005081673345069570155874633220460290011162900873068065044353387042255376321331197145839355270876626896209116281706932058419419985043694684968787877580180579063249938562059688827441196772120556845945709093021801017783532024267437712559776698525435075445312453530,24379152218258906482492311550879222904032299657142525355457269472724266562417862087603238266608926068245433152992105088073531452805187189356790567435332219230651301413762858849116755355885877930185483851669316692179467165059725168458003778120562044911094551614016767541895327106348965256725682881898632251239010971342586248735804355885933092854432575702106523584026168029150861398417670162335859972289331761535391135324650197244391340985538289280848512779115086784546807731473605687728417756436783747883720385660475468617431753857425268742613699673867257484976547014884809737803594445736805689004998882232608324939099,13639308363088689304499602606006748747737150113207488794697369879342136632158898637529348398215211110838650184450613858330095458701807309615170814350482223259077017423473614957663630359321153124867291328161758174033028972972743424022771180662104664036306205285576270109455984955077713540350117086087967860191108122028954920957836754439818988959156002918996099715859267715547983808966864149367592758343569651869960032231333418638792990340363087590766121964019626938526976202582697949104351928836667810574924696014475214582129919944765647849262874087078594478919124600690586319504349329877883243753775251538124197406468,20806324398112704184576243642308446225385834167758222047710915865491553221121456559290405385050181445190026351137186843498701962906728774890279265822922302262674344261443633266351787522423584433088856438680222017039801221837510594012303704942258177163584539612102842678739854493210477613035711103258550560273478479277362352841578985334600196007452719273341052878795457240578018430753780869150598290734861026318283861569123861098217259089119729724503263571923384603566241538064572968952230647186501970761685868678332574820155746476145383468962025352911125509572618602029024652380792594855032573631797517407433780124767,2984534567830588608251691688517562019886934976940239944296177755224193834812017598586976214786265618202828155437088641819872658344085523203617440122990791586663797768559098311449463943487720199704106941788760276946864277974792415345700942642550277726023952217616537482804161899962996481893200668973584167349538844293867619144628567178172496162265433563681342772983054368775009029385174850706677287569940753312983986212778939947598815595002848721076684937312652495527309505744053588382568512842786184034878250903582357463020880854201625144449160004603244837252628379531756302498757122746553391615927560808029960266625,19681285575282653686371866964026575635551812532880664611876190222601081859688141586553347439412758942096084877111883472375168961225184324383968489352875717670106440217006572540605411871630725641391171380023993395232691314662393923848318294382993540810449491616527524662991307157899373490742858664974644838212306475173795164847929404327886006104677091872987173592834296913553225843321065615965897920646645086083927169011172363123935140462214285019059726271437492418936191962060610764641005376370506280067258828239222704103600176916708092576268163001234852617058752894380793333304339677721072271552272594404600260363861,17663259858420311330651766819499911841067663794994694318257191199872170158137865025958007148817857781638492835306514771303332749042829120815317355608633338052028835394702531720709875380635913577846095483312528431723891955957026638053673584169905737554185634030129649039016018518994356839547241764882921390944931575304729587593422442361903863687010228628846862342208853396044641495867576785861723973159597871732538239253298128840563941065388954934551651787261972744712209405583851147359110032083949020208533161960188954813739180009449972293158373021060141688387818302891372350131649013502869609299334048318236045598871,5298970575809274629438935393989318057761764519542767586120836445032263316761487525811021815951911099884013107458570792999455520743412617129043815044943875968069243444902286481323598638834526377417104328855033745156522241109248831526582827196555064828920153555458318257230359794631019067306886747836486535385255549193636393132450664433886493509087281083390290568729201571601929480774638279112348846248022706481056446460853658284203145411150560753280109970030570227674159359532427547564201906120131477615407933400264643596572008335881981150704968737407428485573362254058660832170694074403410494545950595818012264895776,15913403370317249903846545253264583237445426368566054050873204733344285093615027647693061965382356514660489490017289737470216855339451599323161686141225364898734459213317143215419647354792387760477998230133600223913390244574171627679693591136928514907378143973333998319592583595882555481681002615976566590485876365765518571760268938260544608828017208378436062792581980653043467844284389159435925884731521336805223809049222649874552372676573497110509098941429212961378401761184902390250234585999298135037647853709390803265128558710383431672409386841314821848625953345836234945114508861921890833145094378447829164485787,2290909140884019351426250008814545735225813230804981825833168241438120125584365814035371010990772186759925886882837107545743421629040643022748869446583860483172598682089887676740059939878553272595424436357723367398096377972698494175572434136161599049698027302739164581483237687791238697379241703838109655701932792883820617202754352159209515775921392841098109717647668579384288444138762640166641466203925793570935398566304261495839675905915184706531257340555764797653386663178215604213661066377035729358506114543600757612373813217341582075351741934166661911856401287953329256496263459473595206461438549716253839581620,16642615813361835581230500131246118445590603247887791817817316273244438476256311337001611675388574331977410141699297630317377151836311293305027088331310025109780248001730816502531361314291505497281231329646213545390817348454790771602982974763540004526670479533111992035177312072478629306988622806347623090425003234077873805375141062348645927401285345899503907001825760439541705306585854742931882134500925066002906885338189163552908934604616236359806104007315451823167682352183241953279551520079950202231330492255621315016646701261669501844925563045252616708085163536257987840050252877140816998011230187115088535718084,16010347999096675182232092054526583890655342476048555695134478148077646319292254202928857709848426726687922101503995183630866920756294444357812738165670087524526688577215556076807546011943089084967115014780281986236650136100212790809186133722139336439667178800133917927993914606420172087843235000579778849526996068548810587854703520128067422195406060143205277668392537421614569464766336104310955572146529110182880365088792241394086157577886083440548786679580400292545275535505024808973895871707731827445166453079771165377996477241584002682623055073167645192536278061988188027824852844065261608054572024963829903461213],"H2j":[3368171208877966911054339907901878144315427177489764716664525147952589494997571345476952466465636584372230416806643927079294770772639785886747559841089671070120102511739419185926825275343129268693107584218806327021288882477748577914215697371729166784288283440868236399459954587383445757960644874348547417850473459042890356424271874499317095341286743556259239705095932387025485711185437452734962326711790258196775033662070121656155183933539103178989257156247756946175745703344908852193344259286268186560067884170926994359970521939453852919421341990972981960061011629945378288288327928173529860414633963687461741921536,21571995110918784658914871089233085747498481392093921476006031602493786671249981878215451382962183306832489322303548281716296137774931836883062638257871799588636736223841397596603236825079859053119441636830060533162035824030490541191082185733831191460351456499274515867869223195196735738841516139421749973183291711819985317821732516820314960505801684638233368245136026792456696584282458766742520555425925807015416047178765452538113430822668214923191463369535833443605844329620997852520039896259519774630621573507729397714725431894641714478634392952187074508209560077240054333035743202911738795412331854359778973195140,14361846248841354239738429614485615020817620015740214377557182447187161532145777460980697522328331383902906916852306307688790083451608130261350491455026208295552005757157547049806867066926847972162187184750531821995727255016828133897770613409484181886065535775699953909464798003780913388918153183011660224430464726560354626850573087079518001579497098985920611294338802921392907919446517107741456227975646401634963060678572780580998274987217038988195161229432595476488751730989311796958677066257365863948226172977171594831544011639884849989931328654207271418544321580100757601201270000125579606365984683036050427736901,3320303882237934822574723730249906877625782534310160672723504685750059065549780868692191634937564489497907122877469551544554741543440051593275714064385262048169355745443620314041833050794531307335253819559894664711581948933864857312882072901440293913927021712377972600011615454373450050526995352982830050256391443830850515525775497974669346917338799122924286263331475349263163070978610950486766234107397409979634217974050928014066919223534136219934067215088896161064759214148618049130963680983012705398939807692207987093138939884157043400363128971664499276483693036909962979142844998423058170845192989653278227244556,11392712315645310673556256100365181042182208368042016535682634838624439633464280578340353342992697843456486856323709208993769929825667198124843256857854149171724638555790573818365215224736100981973384410995558183533272266822358013891089919574254939818330873527463833155579817319890250882056946018928950519405481352273564274138745239339555689528027209630484474043328702633331977168775903350557929023233359205813047128230741363083482041365845075249319178793999005856778680811779083784522911420519825713738930903604514930432327435755406403484491228343075922083298289929463367612180095879814334515830338256256962304365507,16128185768089596194287119128971616467728481679140585100708821051566471323843047828854183726318833284371487280925375797724567335316422823058316454263458054143106806709907496680547056853651764349462358556329487313360470751830659004515085115085503406434144518308588359624087795942838829972724870214686385899497790143468039433972576851570857473482249444251166188717970319339154993972583107254198134043017660882069243167380269891894037618164535745069845632928065376946760432598515015966819900477155552863106379035709861023910264232532374352692943776001019180723682584987138149276551856921296644229421379331608912433891787,2216711622729147643119351601279604576561222476671706440839914460051282496368367881534683081378746937805707571316950268212663028051018612966825594397873907399847514954700788018713085783872783310865267981225782070802491186153117333152717062661110252994273036185050571252614763467112197381544773361260703440205625252670499456016034457927577251901944688698835868136916669160283880144324751412122403729270589464975875662168775295336481672192780137765587777958466322897160031233145485380452023766308429956773283861365366429753738225270634870302712702783980696520536919562785018253963272279772947237341901826167911636277398,14567981249611770119460797088791616882610277285940857160650608249425344206528691122331543913667869847178068077135905754757970717904714688019328854767805335556395966314263235325078374161755665460346725642944725762703818596015903905714083108502634334495870792846224658572820537006327415243377500340330706127007814008821793048336577227035431648149947100606065474813247441707074217050761365292856644845629066245995828609114930249956124849463230151850823327413055370077318181578457937246716760725440912216906628033172873929155794447444347775998977195569636526530564164070920144286322379557192066768871877841501668738723305,11562467842115790891804601373773643847126621903349499609152938962148770984937205728801191644445725158989276699296504193090664088648177394705510081647868491010141118677836328015755807190340752111789458182176683494843129204876774659319228937425442946958815453444622877125277511242659189800732695804577042735408856749044867603169231506434230337165888447884043777386886336176295745762185799165141571995448994795987563473269027183930075484844146542824749783851152327060411300732221330038342605240436682988238960554043191119742665518743299119772957848539797927531910599793668616983919654530567233469044356313491217598173963,14001988942247671750781482079375285966547579414294794319094213847379686940578167330959958747320137628734714588973465688779508774703004652572462868416321674738451567199004872420641775754108356291951642382728451341563463073268234897512437292991864411475522021623042299363078178084134670414407763213420631947305174457007699331702204294303015464925310244650403343929391594959891748515738314022772251420423895070351394216428634037166244804545860754313566530581379130190514697248618490807663014153146208137639940027271688234812971813570187637013722635079779830294526604514749212529717398437104564243590356265592707324430248,22660381208680529934440965587759859630365737502029115748369924654698991903261875827625444059798716389150600717053198039271991446052177985348107490095372700835812383361394955848974961135498980301472468398590372824927166661721168913896457190085269560320077063240744390945543298734163933076390800852847268723891846915780866370885782050245477056357544654583119258014409021504561016925378839878361190561580782875056594285065583655990468688145199834395357403106937935824760810934700883413929457207664342072543405193505090717688282434192414638239406093224709925453132516053056802277292184257441746331824932943075086343111278,20472030140330590554727016751322746521411547021589348812503605132754052870300345339453032427074737788538570891246727822818774891000538284023878268779231690147875265496447517546051987993131805558030308294615301233476549529141133753715149811029684466002817709334036803452074715441881335148948617848448549417354051160238759910288354822541817903899839091496273435021826344319441409806973908079330351993159801831003550379943098083992503486981995525990398355622285332802868604496636639655839747683821735810491234886789689703654299736502370849656509374303361111199544583501333765966424789805698080099714702838932727164170265,2453173651401016059883376082702788558595819343620938909718003743834761063920578770151771007440124157356829685449240956671627119096461094862434828440771694576875873539491082895345114445338009283914246401641276451109273726841868022516636570181871922631150553766823691471767095455577358060583652290109547591748476465162423200240371828509110384977101559949176482932811774533277255627251591525680337416653414697852938946477765739575989782561041133771451257557157756072849234217247160968445068150218106127891386897699168070200218755068578136094949985380806928006246790329032200529105916916706533850553672076045608730359951,24113152339438360498818613385483602121911555739122745946787379178133957345957135620586264478203421944425299426192146461629084303328006516447630615633641891356240907180660156167532682435848933370915136668244592305335752238307655218128679169067763462102575980085156721937439825798887974559139719995948680828470417607776837167245694714142889348485597791698351034577938495332154328968099025912022930753095015877561713107591709857548795164690012791766454787725487399290632750389338230767552797412606609844617222343058516288469384643892784348204522341997782682670665258025662990169755315957866286658684293611644496873215267,23048127989879822710411192866890144848102725506107457207672066933390327615164057701868652098516421397166175276204189099923035751642625511125320886106285613893278788342927698548384268560900735111168363954600824026890037073968715675372129633119593307084369015870114545021114363768521678984746381386414166722200844864695581741219036038918650136132423598216731404838838590398569938445014697553573715959930243891120229359688175340044395042982004999256741864583061848148945179825358319553305735497035945950407010348447423433336328707080153581767979294379351950056937128181379551873194994067035954630194182060875682649437666,13618893464695086149676203128264379703835247962620883770951238013108147463339903484787069986025297587613907750851693587285998342458273645890621629308654871877706080796956646324471034007240766614380367007821000885398439611969420081154359024999574164769946112634981576459912811818772491470799900760145047753530968995478407930477477944129573287306569838212654312701822189291272987922653156057983889008935259264244527455188704827518079129994488508788103513618119832400499449348458232904888661877972105894911067928574676593878643851258312142433749927142945806711403413926146774157545099025460329680057003565864119710344042,23894029291617241391144328899509691451082120805949912944383938437120322549284785238294999166576087704069349411280857670919349460489513399500828536265895125463653495907166485758411354581066514943080277665731467417672021474933030712874768858153808012182457456133833868682464778542510979705494991241834256525297885337509013426009068419788422403698033836643374538850826433098217327104341285009528115639746062522009884356634868057714134080806096522631119686584895158882950387390079669636785522392222833493980203199840117132536258676406629318977553433626720193118379634005263005358473104730141003648560474105109737111011794,8925336938516965008397109104514048184046286665452569746388287155124102463448431342748346308295582163969585477123381674515410213967775651281608577967919981280923720344420733336038269189964575637162708585549385406099462739524026684819607311522399446887121322482655436562521377082292558533779186792041587188361186852658931953312216304602575717772394803653647861926317392730789837892117863267885605817028617970756887793540591824273228108598874261690153175536884068161483807477696239392976829822163308261960542651335245650622440817598987961098884462409657203750437907285145610244236094931259734945402603438305753971150592,11949666259971918796589430623190075546810486453882961593114781232790528357171489136086300172564872735213582648459678932324553671446193373613445392996846768949427585353892225809922873734606473958012848905522095066153323414491640379067553063059327565094898320425802881846169782611727703042073646692303198048486923691657532734229486488161759607766287874080676488615866925028524263799527274261471472615111756048644281578781133899646868101860588922113737985515123939591333283772116702698675273675787772365936701715064375893211337204849804346824788133348904362412793959284749560448461044309070434592388006426231060171764771,22250566339370324059402215781976249391077086920660167269541657986285216346026428267640441435642495757683689137264020871118649281135403445710476580606390835296225377720486579495200200373576733192798872047011357659910138900430140520045889539388154712432007987497852789128001047310532391671755193946030519165629053752937739899959567496721448943588557458516035029605073085115080892712303741049416122614132971525567297514147438256957998569093867126816514230762539072531021367441808139154778858187018499802649090111006001230394761758788797026721593274233504527845651968558769656875733771044784061166465882679811351871629592],"BigXj":[{"Coords":[107932666477475802631511202367582748861519739569035537904969017494701526323818,27810089900979531039053592509940878404833992140356119628629019981009106058899]},{"Coords":[70488850009775279003934303461546816167586319901288720095232797816893086714940,21365158033407193885213404713050228625397820553043856269267720323259910113340]},{"Coords":[96704419145309517259142970140495022508494287400107594467439362232020961329299,76628584944766298203991062873793502752240767184659143342509677627090500089962]},{"Coords":[28019161860991754547254544009397503028608838172584402384170752184470432984674,108882834276696603625351040619123218095898824500661874818668494090573839581587]},{"Coords":[69854419615803608419512220164651266075688659942948825382651503385261699188382,86209865999364219341605400066204025416938700532196803014526015416182305901566]},{"Coords":[55707469940275855599640808250448173151230633312005616373715718152006593734016,71581471827456608524472614862044126332419275513283203837579704443605501341979]},{"Coords":[31537542564214197931115404850756486671358385103785295421162883744455005249506,31003647934233069190792056145926504346119044635106496026002117518163562078840]},{"Coords":[71459743938853567115182393388387842195822211722537627655935266215390092032802,105621264392663357649957909617094860377111556629887291515711877643951632476111]},{"Coords":[100170179262204638729042299933877814060918019584852761639094198183345507736585,28900877763089774489040863107152228045173480683157331262486804734772631569442]},{"Coords":[3393930126761759176345687233491451168543634500428196687848693751772795262696,55773871461934232294712308387072487465508923595028614508001564000526922809830]},{"Coords":[35436174997161384450863357581481493940397620545951968086180770941965008242533,22941476771782647278770334144010957938195504420883358055133977993491797250976]},{"Coords":[20742591764203230819083960194719627433799141307841650214987882235851644570480,36792680781195360005281832466704518433303594582044389944698351592636972852101]},{"Coords":[78822613167932563650341174247543824338627391764838115664582901884987316485415,29305611808246076472515388603014476455888609363718621630903671994111327870746]},{"Coords":[106662917025753316359017201639970683777210765763056751174154469380644107823988,38376047705320523688829546978146661452201839032747402442602961204420046730181]},{"Coords":[50131378328647772110850225682895027165473791107252577081428683178756073747030,6484525664721285218064077598136507537588284647694850022336064622644441747313]},{"Coords":[63814576207919556970263190432671978386229401573575575774195362165468317841987,52351921007743438678847732376277019290979039258214198300788054101141627584484]},{"Coords":[33074537919982031116943260590723731125144796968052633499149040111855190089892,52462876494517613825042650703891412581466209764861573326649361336309483684004]},{"Coords":[46337244846970653814521818706394664913446423803670640514811670889644615970917,60622380590936530234720907025041106487069869976400399621024354043945489694205]},{"Coords":[68932201886808999446322681662607675293176822755681592496851252047161893154617,102558540543641758967834783938704783088913683989892796677072783324191846467831]},{"Coords":[47093684301174743530406169926797075725911173707597448168332637736184121729220,74517549523358620639964596401882412428175945976473031695393603496712918162101]}],"PaillierPKs":[{"N":22709559588116531632086995360614881758145847958604375585917706994116168375700793376291131544827864145364687259129107134734036373558516565338923959924703156876435469021413354399418993619174071015237246272863140297401272631661028437511282301913323857011886496541494453371682094558243513835287198378640755589750985308457641295136946180231598093936765306071278862423297167033582450972276390473663053961764398615170355333807856718875047329620163477731845253445115727590642190491372191245975524943279344261890117425706855830582201691939059698357650223528988243289388677629074389631868130733940366531485671699566601163615661},{"N":23443957150234287781524191819714980056334495753799141564738532515877512840928595615570444488815473106829833471979932833846134743028112638013245259429585839683894162551870479232892081727695293106142145837752188330564435054323350976552725925455074206192778580457152750035194725712966851385101176362564718763658489874740341398176203077931510475924742361380746164713522692182335455005818339528332609035897638651762193188267900136476551393608916669622907100712471489443414455950510417300576764177277906265582678299980344888299166427651633758323734973558749488731824311505669417847053850760848940423643750519510719400853833},{"N":22287028689259504755807149120904050002396020193634043129060485604472139332057712093383073269246020913354970143960065213561811698182428208504100112877284663913440710058603853492628849020664094889598583038642474751945815658301741607940280803922553940685657785019086609257141579057485855668397778602262577280637009340765489166395694519909332104264865369924039797553524566502151933416185073911748303993059047774791584591703105106437459703251723998725467328206119091524784524659754164199098692948259716816125731645175450298738430174307931086107554346505367596601043514472572775722114263120820933996056766066990263737006037},{"N":21778455942403717802437188616130445569467912356333711523204106321468333958250985526522676150458521139952234508699903096368286173136552336834061186195705878795885628080532376972447127537374960052755412900354192740274699607194495256559382391407619506149746521336051948176770581697936379025338953179299724284866217851767053361169462746892201032000776732741861429352495405542992367041691709412944529198233031428083828538853890568987466209820731450551650370292813109604532198408719181905952928419308306626664706489746484860069309396704199131581338218405332252354539932883923534658047809067343949198229794022084007329008301},{"N":29488834801717020514549557511738862835006604218586783270956635930974777840977382736818004943434492491272083417763033198615963445455042431681833978353867438176815774128330303688651059852719975859250721567522453513175104614385098138081209372251486732213899964978141377939387124226524201851559541320231331748973500724292675746395999336271645347092285737228923411234511145980962423027637945866866145915490526131803713409632083226573065035861386075817821231913413262072294132940186959486615122177174171466978866072639941945123654758187894442697758141328636666389957637295324259708835849664958476600091423260629670847006421},{"N":25268781854018641821625117526035412649921406362359871346957405856614663043063881662682001256500050697385215601589085313282671061645985003913281457834036290368462929918763869754871955608135979298238482437377851913552755913815405018774915484866488142406303297444296659799278477225336231564636195441498040062964451813900346208766721654100661710718867197194733579941984196715209521167970358227552984230489600141394198144474928084583860744656840175887777161454380202188440178263993042579519816969496156562013371732648143667185817225623397113488180419930136011024805515953457443050643425221010148081098971618629282508806153},{"N":24077030535873838147372990238338423111894661719881851208383511932936303788667059523325649062922462968249640702042151293306587810036594125879862518141403476609262478705296844024060273562609291573351215091787555942245982552314643486135981274381916357213038852978171063476276539384812002232533351978097782562939609101707149234139391638125337919614533689982228496010017193463462456934753130533077727108799001253943486336718218272844533405886783727956436625979626270665501149887064412642510585330023269746464208739229956710668053204092869919317416558618819105166451453240320574158658174090376334547079951345889147202424197},{"N":24121210025310295136286367465067731861316363403302816495348899075683542883649267862423504534408270521528934904000166037695519824119622953526124849500602533136680339478221010232315859804261374907195769559713293619918530079931895046819311703445607618111244570268187554380693098539122537784889700313005700764528116670706472264450599583329582635827622249925780628859318211609939169828662135675938640346560681426019582628979275573701346775265344080547061237809761964885298244705276139799178175782218409921284339726928435810584460742981474010807766522632224843035722465220411812727073796692626221078545796203402892726398073},{"N":26956782591324520026471701264974010002551430844929064558517606333109244333104364565707985261498791802440691867651722784210280888161145432103606824079477489895607158911928686613189674072708812330140444741131333062722881890279580684791181148664415766399323289281546841599984936640417820094077391333063403828290767644884268872176714175866593843027335088472731880830448148161449695591865312724115778446298294191846018327598860718546463796845910458753293225328770367785304521228332493000905274903063796918859478998380272311510096333363160486944174426731511854410356169028732110892177884127982236790065871058497952170624401},{"N":26249557760815986852034237905417683014048371748204856284575862917968310785883486514046189771449794410062311941320778404041317694258818896788913080156960590072834802977027251267292982532721343074208805165986815554608059680417209847673748867108719737464989377176319950884300513507127044766841349776517208994115342645229445634306184178062065483947743824551463650982111893910449653832587022792656303977671598375329018430362166017195461057586254287305421091325058340750141735758488815547176349755224428765382123772435956499576803085012124378000542928725389368171404677133866847871236251441021957443853014282022367009685861},{"N":29234737641692976595774236923019314216135921756073342884203680618120226690739166288052322806435356115092650761656136403373733697692050475566331202817414926309882834844059857181882811689758047525443057988160495074334079542319370840285641441603178202467820462588826229922786870937847036888109767951604636584098102615282750014508387427358079100450062680715472456836097388046216848854107984658532128468648705497171277133763535425127577293318939184956565230142817502839346792604559307183239212332206857888330805061669830296766718735240517983609617995793272006065303892130080909658027060291496416496673503247698087863812741},{"N":23656386949781378983561509210223997485938600678969404520355733863050336777307520388106184053630795530040934267843013912848246799628076757878172461266778291537251825140340096706161543161977283845709058224884977213986434571463756330276479208682952096086332163009127424608568458165322976353036562065434426650045708578336603634894217912009997772105108262453019882143577371634194078714264992380438885990335741008955488808069468796086801023973076920357953123958081822096146124559004458043648352764252390085772923647155984579633692639191141425745475545839873632550694666801559519849238477058285069280151324843991596401646381},{"N":23799985430892428550287426639163393896421663100337917557737015159273107046495772196531619480943457572757018895004491581880198797117841320493538657520011738472038586707181276745476787089472101888983238214242261897466709975139313526918983914349699164310009561585851364405464439780111046692215844366708075439030620693316351016954915727063684631173044817825576871464988585229583331260702104268887569088888141481975510438061934915565917441018736997897082388887244599485050548831301667982348795441755679549415459512278548728977097478254566801983960996625453970296380670902503277224729081061542066926552900097298958795919921},{"N":23398981485141581657111580810187356464859260220476400872431878471724619284703169207796437272649895475435460945312990810473873577007856956495840504596329080928974891464665270653430872926713471055976901497303072174459471872022720981442223753911960555794844008812776454183058593769792366230853507105586338576934054995838272457499054915439455088496111012971850904735289245691042597216634196809202787360353382667100073960437339209464655220130141692780283364216457426778903461083049390591667885095066567970867147659207581183606534554025283663685502553767113396678790806758816850832944906936477595076662914396730813902861273},{"N":24645804484208008107774215519843481629641338685651268289287772114412526440944111199969614165736177320304962312701073205538949325003439610780511806547845684862319242490345551374064725883323450769869814834613757570218276860284970150303912936880248283750218053176729988470901025014948637258535944241625099061769802348376561541469733700398108049774899180411488580995483844861534070436865153589414051441506488195269353530135159150725450897767102214976100194473384482425657735122085724544900424323758582364844065404991831422328546732900258700279735848044809564185617079126240413557300335393565946088211107690073344594774029},{"N":23664465666512928010084076006211208070039097235865486451752383277009646489200010451773766854885315852604650109050180997494686499532996982524560956955784208153283884502900612829692080614937231941501430129101050170848135543483642879522140453631883679490750446245717832265221232589489474380464199065201167874127465810334527670252907568617820949350516778153996202871756067806159248004814563340677682071536108582393686279672503548392243690499337315202892692273695083478754736347613219568092769421161385508903701795824994052294039246344316342377047969959511601521901736714883097032290625287691937066549723767146291790114657},{"N":22165609813091667259068375406991183583538522584875908765309739098448534648989953434651686788146626220283972510122914357995219529654582068510398362007031593307847827533082059785375352080923687640731375327188268078188971415753864060723639564145551626769223269559344648109409611860616931934210627553354435590764505138165455042290624193631088250055962033560484870481238850988856340320616852463026890656813658017413542014132396994215496811530247375977104307808133564653689276479112825279061966541271092780066027501498091088819663615972345385914896991989394778860649710938578818683661928070093400675043514978345177529652389},{"N":24352137164919775060505902875895344669551891343219870713119659495462675754712808458066602996522267529841963340495194383402601416044030073771848283771276922546693343786778909195920195728052430645791682092298169597213540403251589258864324656830830912032021695409682689693414793104678019843226941004344886835923010707685858497420014814885662783481710790760565625597934856999445792014460533464855807508832344902590088930105318969772303090927340774137226985715726042801943592444113021856673268564036683304420372700405680896320106848396385562893886698977710031223312091933030330629827691164100994176634674536649129152931477},{"N":24388425323514301995345880181969195093222141730097776998750148283180811486102209130079655780738706237274584643472954914248041737365215477795339570700387683883122567928523036945799350046333477704674538444513982433086664207664876244841911099162128315338715496189423824903190803189243082722638413039421880070666657272413079871744422617706188003161639646693501252928939859937588136677607569634910081471599993513483449765647227570734163189729311880395414909879933139619835138785852476313690881562300854512419432999005203281002911021482679309149225773391703345476483158302622073477221903694296256566718995262186459619480089},{"N":21604728584405813409256303272593334134333518895675489098410576803850613670962405878762275711641486977471395420657043551402890823783906820971712770494973201278527635005537714974340519544361402189093858595896231890523544098157276831993549216761475195055251372273062282101577640320665049775934814411518181030603401788639796770568692007642464803606076672769360069701571162199680486773757848273630254180550410784187377722267755203781450486589090106764541644204842436002216866597611146281471192249537747681020939314396157603364418120170135828923470079746789793341042476885118587449440114091973976013051496269141578521399429}],"ECDSAPub":{"Coords":[82191134404558877049244897640959846424169542769967270904890689024123037541855,102677683688073592669768840687667774566029618427936181452214529135934890152533]}} \ No newline at end of file diff --git a/test/_fixtures/keygen_data_15.json b/test/_fixtures/keygen_data_15.json deleted file mode 100644 index 8114266c..00000000 --- a/test/_fixtures/keygen_data_15.json +++ /dev/null @@ -1 +0,0 @@ -{"PaillierSK":{"N":23664465666512928010084076006211208070039097235865486451752383277009646489200010451773766854885315852604650109050180997494686499532996982524560956955784208153283884502900612829692080614937231941501430129101050170848135543483642879522140453631883679490750446245717832265221232589489474380464199065201167874127465810334527670252907568617820949350516778153996202871756067806159248004814563340677682071536108582393686279672503548392243690499337315202892692273695083478754736347613219568092769421161385508903701795824994052294039246344316342377047969959511601521901736714883097032290625287691937066549723767146291790114657,"LambdaN":11832232833256464005042038003105604035019548617932743225876191638504823244600005225886883427442657926302325054525090498747343249766498491262280478477892104076641942251450306414846040307468615970750715064550525085424067771741821439761070226815941839745375223122858916132610616294744737190232099532600583937063578638303933454361139301114192885879369458353231044701503011805514900511284647791107440084634380062046881788394032389472042058309135051780703935598585047399518865672861158992608805835363320060554990261718735588191972958526139410449784504217974324209044307170266696498950019600891584880400028458481386052098378,"PhiN":23664465666512928010084076006211208070039097235865486451752383277009646489200010451773766854885315852604650109050180997494686499532996982524560956955784208153283884502900612829692080614937231941501430129101050170848135543483642879522140453631883679490750446245717832265221232589489474380464199065201167874127157276607866908722278602228385771758738916706462089403006023611029801022569295582214880169268760124093763576788064778944084116618270103561407871197170094799037731345722317985217611670726640121109980523437471176383945917052278820899569008435948648418088614340533392997900039201783169760800056916962772104196756},"NTildei":31307948529511772422092081620376528723351660195178245630091738647550584183808045529448767036136429258045017880313805169530174754560039519751935200016137594525166410173049351154227454247975670642857061354284229524586536451868860885813714578893448403685065908393856455188372709054731049692863370865677701391460552630927498629863324809550335559817235997586126538332699529118621351625401581293898546298753212618743290610874832103267345624474884402930254336353399762494911879332332316505133643206864735435683656288655072941785814640312959405902536938955107787448304325831133755028455554235924936888965889253927315459519249,"H1i":5298970575809274629438935393989318057761764519542767586120836445032263316761487525811021815951911099884013107458570792999455520743412617129043815044943875968069243444902286481323598638834526377417104328855033745156522241109248831526582827196555064828920153555458318257230359794631019067306886747836486535385255549193636393132450664433886493509087281083390290568729201571601929480774638279112348846248022706481056446460853658284203145411150560753280109970030570227674159359532427547564201906120131477615407933400264643596572008335881981150704968737407428485573362254058660832170694074403410494545950595818012264895776,"H2i":13618893464695086149676203128264379703835247962620883770951238013108147463339903484787069986025297587613907750851693587285998342458273645890621629308654871877706080796956646324471034007240766614380367007821000885398439611969420081154359024999574164769946112634981576459912811818772491470799900760145047753530968995478407930477477944129573287306569838212654312701822189291272987922653156057983889008935259264244527455188704827518079129994488508788103513618119832400499449348458232904888661877972105894911067928574676593878643851258312142433749927142945806711403413926146774157545099025460329680057003565864119710344042,"Alpha":7245406513521668605372809347186448576306901322584152276962514763988082076712829436424055211260778240880377574344791289723354076703320385616702995915700565037707787646367644741416961591387824383894528816194164522686778650811071172418727062974228936437300797579339353113397556644443325043208273952312763755332420990944563526123959472255425104791894824674181787772692776098341045128182813453066395002817234279575843860052178354563342052389672366697676475516731122486930449601595249791940287721954936241437975929455974643345848729912627426067276776478279493584857126166350051059198207380951832842728854733071825439696657,"Beta":7645441716409476183853628288843206726365813447012088463189878479144194334321319478610021603351693985357304799052897499637765956813840802124897915071081543700914993629686275526194469291261500703057429218178210766209023804490477042840473193844649727628955441619473633688126400924885569223118977122730210129269728405430164308688042111986054936559761476639293190699456117465653154300254505719934971870819350928075435733869263782981595814847143992293623407750336207608294045979098341885417527523034836311255832736763861241909276520975387468338301817644904311943005218359713256503691608827095596947857030941223684927012861,"P":89571549860605323736032517418531050012501236339764231308052646563645201804127896750641187547667674645088524630289526113369365119222527929975598191894038683501341368930009080902668192181287872463893268928491817237280477396006287827999984944258609470617781729504570356015943855751542447551649936637054138578923,"Q":87382513136800694365110784474056714158000840849592676445296996898547466294506240885219288834696556059180857196878507236116353337717455741117089872732201040156105505240448747931182097331761013150936460789974518707651953849530931800479371602046287475163299044743723901231491815004277419626901535160221078330283,"Xi":8265099847222110803992499120899342602362322471057748883362070683129977217311,"ShareID":70024534756929667616115849317753032895580033020239899587896153938577578972764,"Ks":[70024534756929667616115849317753032895580033020239899587896153938577578972749,70024534756929667616115849317753032895580033020239899587896153938577578972750,70024534756929667616115849317753032895580033020239899587896153938577578972751,70024534756929667616115849317753032895580033020239899587896153938577578972752,70024534756929667616115849317753032895580033020239899587896153938577578972753,70024534756929667616115849317753032895580033020239899587896153938577578972754,70024534756929667616115849317753032895580033020239899587896153938577578972755,70024534756929667616115849317753032895580033020239899587896153938577578972756,70024534756929667616115849317753032895580033020239899587896153938577578972757,70024534756929667616115849317753032895580033020239899587896153938577578972758,70024534756929667616115849317753032895580033020239899587896153938577578972759,70024534756929667616115849317753032895580033020239899587896153938577578972760,70024534756929667616115849317753032895580033020239899587896153938577578972761,70024534756929667616115849317753032895580033020239899587896153938577578972762,70024534756929667616115849317753032895580033020239899587896153938577578972763,70024534756929667616115849317753032895580033020239899587896153938577578972764,70024534756929667616115849317753032895580033020239899587896153938577578972765,70024534756929667616115849317753032895580033020239899587896153938577578972766,70024534756929667616115849317753032895580033020239899587896153938577578972767,70024534756929667616115849317753032895580033020239899587896153938577578972768],"NTildej":[24366917239515824974480442558600034492208859976504581465004349103795399783288421050831073024860369440303795551299953821996018530997630686285237603133194573622718124597460737572013930327249120648302190449742363261573076443183981343509885970573178298207488759436277685910850783372123719807298277837194569211839837465137044422691734879346883675317045008891659749391963717253895556693016508386391015178130161988317310806894350108084212611277788190739249760699147435109968242744158314817905689533615803297627887736048945645075792686416602832677541152918424023805280241226851534199867283487943291927564365275467582581271053,24760645214372673899925400730945520473062951341429554908754617530444794660401836428698520741646966955149111758288194803110363170964340801072472223878272430220722034553855593944561986134993071918255771235073978495918874383067260043443905506152815841034811512510858407909698555608803009379935760654878372301870950275270724586431009354962811874333750886958869738872804882633350285507993032763679234057221556156642769183354423672540429587887851343483914923600996425040023829456198369968692844034517720322057627565080062766276792221145223750390964637842847390939964073972850018793739320669513533403812272268817559996728177,24335507174653830446370401218472354012341984065893977351232759664219171991998539382418393419142907217562914494098827810315198583692551476438232634594991137003295122745831430159532586451010818106345725278793436836406022036374386618877645773128457664942790386603953998246404350465143928182109615440037926218085391564421745517307996722808502413850991173460229650178023548969664557299385141472097112836353938598657235574893430259143862369227601052831476146199261368117297723539373329843815951236997008000605506966102265798289158763516254914284024816124992986001907541315389832578466014006010753144367487203071067653140017,25353120959776139123294155818546513426444543204238814947681743626639583989194265533184090862296087842527526282860965927846515276605818147773016966742984780344247645856238734726222917730082852005118152200740071409410429096265046046476115230269737050878141459099734884888260830179970728221214610731604157017545322535971152193773221758709395769765431078738204491094323008301356895841037132747444047830530409305765562694358003007195242702308043142399969256485870876259711230128209178441443167004632638027691911658424285106297785382963002590496015895572427776988235599297735903480964253948429971597628412447354914215359401,29849885402332341621158797110436829396646924395042456662853244309209629024048299162272105169817115314715561658954210859089958590864101117136365470947498907594068557026997249170993874294161892140147876022164668279854630146959174794473879294364568105935870579392660025720467645329300426773479121856766502569984218591054914763859996476236063750210092775547343099066989888106146219058807079888624162205626100491953381078296178689026680702514982189001052448223393538379392778307314168895065497502603308074595916000270844935723623383768691838356870704054233137068509668072099435779943491520206735659166266930856700483211181,24303346306264095483727907643814355785838936488512300414348142784703917728792656928355740144163123550572150171398192480623395181408570425672723511597546032812698562984141032629389936754449924613948711482870260420456913877526422469201798411517711928654451945040790337077196569240216228957228264615761147375423719114756511538399142649755527243797217920772594702713281103939163745422429156605226253637010451757984598979666631182977221341184990723224510127460146263007980086670575857365789365543477249518437176817144448210584125518855115672157465775432933601089465408090382773104140011964681476656187299047937685144419517,22663176204438991528847068755997123453980704364589354833944958947785385672266299429364336994892902925142195136026995771544990684289261678272550855925683439714148609523477977179010696117909805695701859018966669150739407573082987363056991238107146673103957237104655136409343763639221993038484198677605284199701204669351878989982962102150055730219424526668206392140254467740757469800556697236694088468633665970603098311956910105499246381935436511205439918717236853087415401432056630404175846159692661637004967185601880460514710913037913825633119857629058574151126418040291146967097319384900092639447317903904481362864461,22214406206988221120543596573138808869312423548073528052574227838235500966558488375856182495656208729058219131190228351185002058116343873479198633895772314072671413818939926736318457089940649635331152484030046857163634723835906012553106874988855844579826872824922610248380139635284283310239564378546105159549071234915504686574306652852285495484227675227079507874801353534124836509674143920296971261218965184384289987323806590503991373066703353411925035343072343417173322682200148341574699074894310006001608609036165489022667366737175975429277190015768847957906950063130121905159960720849686267420829596753652148430921,26992054981062895613627607261766199835432715284801801749398907129229048796737348701447929605174559094984645968238323112325575430714478210726667128296579144479334211667227791506349731191531989884599385537951555136889431648507040431760656554949203843341649040209953028348323032563665739842658324687215759862340780391326904566525914822596715715051383829453805370490781186878600411802395931887164480044180689343432959074712196207660797594065685195126347713904229309636698471250350144098081500570797555478540127343168177689831999672573508345263924360426808488416307292793876390765153143370885661040432948994217496537757037,26883601429347938201866566412436359463282736845136879263977010812101340295160083165177085686402734295128738223195845941394861534416081222492334460738589328436684156816061652087254848610272225814333318089300032442695939753398569200283276971829978683842747584203047240258517693679059389343721225356421724973291878661622168915849085533925700422984364421907650824486413330797840743205222070155228532990351439410717713883609930796830287062705670943579996135308824473851899048361474382520461452309816639861239026761274994745411785747289015653392872405877863169928875880404134872170564729075194783267248873823339090853461089,26675898204441883357756938810501612911006923314113656530850642169244358619346060171584915468088311545710004060513299980257359925141562861692364285790755062927815783069742814310907363159744172010043214941961935176791603921250085454102936917126214113873120405883118273636844903335000473865105148550590214462929117780405311499444885924770449779157142014006830224170685309315154438797997384633339817640551850145502452900467824909085498261391267709054450200313476628713250795473832792093350711410373115197160491274663551092524073340836221397352664353235247831158949819050115215290772010284539607969271690219902603821582657,24003425727589170532663869192322030538943945148822062399216337010945961427378027710524236529045097740008239529891693854573603730323074574387306355517555029571396270483790272731994105657673718134894396083438028861748333502807033025075738141563799251049728691667635160338770958887288469952328987442729682278796947289053518986771911122562542149441355230810099948748099507142060010177281487688268845292432759376770532767245812643377347484905682286529844081415426101824234408564247618590677966518836555327692461478356122297916534505785216531638872958168430321684571355170353352724268927780693184938724886624339722183259421,20030939948791694094921106997836532434578994294403521371501479100010836848962747077471607238761388497679145378822499150459403963802326636975589780084279335637070321781313502047027883154267014733038805978970710176410579107929485519779112034850622531520287022547371539439386174878773544830750041302618611105173361798826270784808992652396596786821436733488377837349284332001375201088424331364286550732742247150161681889289004480841207149941594126907534285607712061943572341899739867922754683103581617612214747009636033814762750497302268078808823665919929249386647148964298452596399586628310864464196272071720395192133489,26870132374951553243581913321377246229771795848056596419360924847337540300978229013002723427615100062690126686631934134732102152941473371391783556453709425066357685692036492637888980565254013131275256724381428020710512422112788440607830591932440438849890272166273212125255293837259298348084558313308788645038416611482549103781514142985867750527012906984385110191046837459757808864741583473057341019452578423080700589131792924736182910584032669431737863108910781465411300404077532371983623221078943741087750842713540302692591604785862604978245628364756611702919842339423052849035969584933072813435912401288087398604921,25781309885353513172762417920559862373653633766198016154431702305819993747433843312735651525316421555779956949217599915608247344211910767561492880228357017663462131839160610108626231391786518524635537763772771732022138542377442385539024671393136972077400774477946909998449518641822004119697621239956294809097040644518494643152713366295240127317300380586618659118989790014789381034410565903140125870883802621234783419468923863900036725871332435066935174631607488613764393382263135690909855298574769132391272005233712859895795189174927584736869111985784832037628893972777670733794612566699959726190117505644366934694141,31307948529511772422092081620376528723351660195178245630091738647550584183808045529448767036136429258045017880313805169530174754560039519751935200016137594525166410173049351154227454247975670642857061354284229524586536451868860885813714578893448403685065908393856455188372709054731049692863370865677701391460552630927498629863324809550335559817235997586126538332699529118621351625401581293898546298753212618743290610874832103267345624474884402930254336353399762494911879332332316505133643206864735435683656288655072941785814640312959405902536938955107787448304325831133755028455554235924936888965889253927315459519249,31466961232199038206393986199348595708256863299176374148227521484010795684260339468184532260347996789772040097386032241172658309499404470468218492541809815234208995118730337303514831281668817831605535229415260143432704661750281094187807328676322407373913844432440683972812394664524853699586055958635280164067281091412249301309251915772998531080870705450343112678791059297982033179252277552572737658097615320288170699408198262523087724946180097295208523307748556241283633289461565623961341136472687878275672606572269060361808996126027608464429012339688636176786148346418213288770613540923635302757146988963110333316781,23282315206683722596094270562333648753439051790898100314922005841725502497093211800334393760989042727597691714582193235713639238284172358062468387217727181092939568556559834956352385929118617242221861532950969685568622107078283773942779583910577282365015752267710687089071780861330758005577221151609134583129504364837341221471368611555190375227501319216183854908348755278500330379812379883892909358375120467449644585220805660246421673078936109889143381498767668445860590513918867961598096050612727306953235332046855083649560662539716078578551485777683734466740521988744140757231408246451261769915726695959921765032997,25091337650425677853684475917739333556784369056148930585749057080859640921803414967035499248336819782755466354804640016025044002503128223804670636762370700960312352761126598625504662989187540799606658080278007629478214427447535566556662347722562243890754037326739900472696108231869156013516647618154210840364364919089100138905499001603568088340085110153219085814807927945152975657929969505495173887189020701090313994816079981109190512102678874334588894915787220152560380696231794377692004958328931143825599595181025003997691503128188855105160353707735893011124272774335559316106266020514461879401833904958202494061001,23827659784682250604442454473547796888740733968924087692522596947210995569582513002946432005898923676155984614087332560259943866897650716815951119740918614656692843602108809220144973266843900928325168304104193270024169252614460073574472494366384192690720704949267653372513388389564250659367518167586555169618994627094576635848093242114762843534765611200879960614166650643590955853799316870443339993391685970472310294098785089036360647811365521892090305001153074254408707786436158648387047030717269669710808288303673434511182840032065481730245714970751088620360458026112893074508503440200554493648329036195258926190733],"H1j":[10024025457847388392610646066298514243370787348338532750631360639913721829629888261433439914402718667116400994500512300775136069581637894623537510481269716297031115527602912311323880048384727148486222115704187210174101029381357780998875764924841198846224052749406474209451141960414618133437662859572202780961023516801781475926753784006105642819239485607653090319392184244933555747381471676665633830261574288841173438644814600240117247473386184548108338325639763390271130259071021112922069642676901166841167199223435257080313456925802886649375691201308332777566495693037805296244451983094124223174758130752134991251259,5540062908155010932513159905564312164946355979316528931149460136278288806659772940588319017326328094974853633874382463976169195549392127817304835111543615409573476314059060881338397061412436243810139473181382772109210271463439624149555390649740374635589527762045108740275882849527695527198385706268316952416235237543464363519203592980469637771074904708426157233888490918907104014536294284692202685017252106362206847500376336741712522098586355602155374318553270307953934712780754034315941245597336144803859821983984428471938659224631751193248483706020880124594451403191977963618445462632103562894369717754678411970157,7294264017980791887588541945948527964732046841763268733085682296431903566128312881527716171471646888128877802321111011007465120561544014131687975703500639986893207003039277321438260744935109724584373350656877837682253991859961109267518971621013884413991023503512551591742311046398421527897782104779903020623974791981836764750802585775470044046719785755322826006147242995196401054126149520747563133877218253475355114168420889541015916952420416242677374123641966631897855997275959219115766326404348502491490713975699304986526310844436386187304302850704361098476666746013218735172029033252239873173053183420490728457969,9501218113444747046512167891740890620022448184208745016727575118910400114702536042272711158066289559244823855716406559728787015762712355980741317225927051706399078523944764818407725281098361563758658548109686452917704268397282493394145905917631338144130662786869889947744035847462163212831976185178442327943506290185820473986106267053867388409405767987475830498385924106417897644176202343305711004215516685101951487059182051580662118563531777396290757514364141633090265347173402382594862836539162320425532069699769291364183133350523773491418365804493761877536170212947415911627316964969637971056063543234131063060179,15798786414829945409990379475347092437191933825852017565866427461531342919124334651290935627606571949258216191049074056902849155877229528326934734579833314251986756112086465450838437292200045064209850028597082873902388658379469441564667669701765841537160309665720024332706155566138689213961078587239980763899119769146527020365437175547591597253422987241897416697834718145603044863506510817025716990741255205962477142190641478116356939618991137525950385435749637759382858607750867147376236491183474725313362128439752969796168290272602393139910089130691220986679844969299810559606706770072567820176650336982258175656069,9335293725151276608993402038690349490322365392613976918346481216796454921531989892317554215286413208524498017721329770260220214739976276463115767516661469141467987234112799014449837377419827917305931640946522287484467505347102693011074644574833321939291182991369361351550845549986196632347752029739003400876962371840702829213086378506709453044627207644282674209652698873675164479665879605315024759424379670463637654094152277916485019222649587458037242630015801094579916767996040360006216068355347853880839844214694922100092515535187976540400673364286904799817798092386690711558542096052961324458158162316849747049802,11928753658530568234030789407795275088740952723187227006977773559909074576164921817701724786519460916583196165018163510774039491890001017299531322520325627826211812869166690445989428530376091680807701566180854522056382923625327483414081231404244458202347765643506681512770879868073522880161513490523543914681148241833246281106290736532685240004675518845019764469048182810211653160870255293592651339935498048137995182398802459841631852186888112285076188858851763824315081771524248572039785549974159773606819792419731561145595921289694471859455550756883293661073453125644271107011011223441502328961618975292599286540534,3281434421303304451534752490245528887879239197847942017450979313729063086003376295872507109217827492860554007309921835555072782997029442232019030164252143769859146809734506916627953872016140383116721175515392391691229687480990552997729334078523811275423771755788388400181281035140972235710503768780977567025805917901565574387698038208089499892809008311004708551092635216129712077377038639345772519472468677180077197280667928734700336917165150723117546746441573171713790905181182966896063824517476166929486302044010896828146903022644169171194514314475627079949830761751962833520028060036397259454122764395181619471620,26798335028033483015595995885818313899416775173626251303214746152969095667991567148306665607431284548931904800914249634868412622200397325111043206330920355980127737464934048444736064518743501106031852408038680600709174828761299003903687195970226223339349891916494477088540593890862438659139800883091968208023580402075789145180476758769233643214633776274238005081673345069570155874633220460290011162900873068065044353387042255376321331197145839355270876626896209116281706932058419419985043694684968787877580180579063249938562059688827441196772120556845945709093021801017783532024267437712559776698525435075445312453530,24379152218258906482492311550879222904032299657142525355457269472724266562417862087603238266608926068245433152992105088073531452805187189356790567435332219230651301413762858849116755355885877930185483851669316692179467165059725168458003778120562044911094551614016767541895327106348965256725682881898632251239010971342586248735804355885933092854432575702106523584026168029150861398417670162335859972289331761535391135324650197244391340985538289280848512779115086784546807731473605687728417756436783747883720385660475468617431753857425268742613699673867257484976547014884809737803594445736805689004998882232608324939099,13639308363088689304499602606006748747737150113207488794697369879342136632158898637529348398215211110838650184450613858330095458701807309615170814350482223259077017423473614957663630359321153124867291328161758174033028972972743424022771180662104664036306205285576270109455984955077713540350117086087967860191108122028954920957836754439818988959156002918996099715859267715547983808966864149367592758343569651869960032231333418638792990340363087590766121964019626938526976202582697949104351928836667810574924696014475214582129919944765647849262874087078594478919124600690586319504349329877883243753775251538124197406468,20806324398112704184576243642308446225385834167758222047710915865491553221121456559290405385050181445190026351137186843498701962906728774890279265822922302262674344261443633266351787522423584433088856438680222017039801221837510594012303704942258177163584539612102842678739854493210477613035711103258550560273478479277362352841578985334600196007452719273341052878795457240578018430753780869150598290734861026318283861569123861098217259089119729724503263571923384603566241538064572968952230647186501970761685868678332574820155746476145383468962025352911125509572618602029024652380792594855032573631797517407433780124767,2984534567830588608251691688517562019886934976940239944296177755224193834812017598586976214786265618202828155437088641819872658344085523203617440122990791586663797768559098311449463943487720199704106941788760276946864277974792415345700942642550277726023952217616537482804161899962996481893200668973584167349538844293867619144628567178172496162265433563681342772983054368775009029385174850706677287569940753312983986212778939947598815595002848721076684937312652495527309505744053588382568512842786184034878250903582357463020880854201625144449160004603244837252628379531756302498757122746553391615927560808029960266625,19681285575282653686371866964026575635551812532880664611876190222601081859688141586553347439412758942096084877111883472375168961225184324383968489352875717670106440217006572540605411871630725641391171380023993395232691314662393923848318294382993540810449491616527524662991307157899373490742858664974644838212306475173795164847929404327886006104677091872987173592834296913553225843321065615965897920646645086083927169011172363123935140462214285019059726271437492418936191962060610764641005376370506280067258828239222704103600176916708092576268163001234852617058752894380793333304339677721072271552272594404600260363861,17663259858420311330651766819499911841067663794994694318257191199872170158137865025958007148817857781638492835306514771303332749042829120815317355608633338052028835394702531720709875380635913577846095483312528431723891955957026638053673584169905737554185634030129649039016018518994356839547241764882921390944931575304729587593422442361903863687010228628846862342208853396044641495867576785861723973159597871732538239253298128840563941065388954934551651787261972744712209405583851147359110032083949020208533161960188954813739180009449972293158373021060141688387818302891372350131649013502869609299334048318236045598871,5298970575809274629438935393989318057761764519542767586120836445032263316761487525811021815951911099884013107458570792999455520743412617129043815044943875968069243444902286481323598638834526377417104328855033745156522241109248831526582827196555064828920153555458318257230359794631019067306886747836486535385255549193636393132450664433886493509087281083390290568729201571601929480774638279112348846248022706481056446460853658284203145411150560753280109970030570227674159359532427547564201906120131477615407933400264643596572008335881981150704968737407428485573362254058660832170694074403410494545950595818012264895776,15913403370317249903846545253264583237445426368566054050873204733344285093615027647693061965382356514660489490017289737470216855339451599323161686141225364898734459213317143215419647354792387760477998230133600223913390244574171627679693591136928514907378143973333998319592583595882555481681002615976566590485876365765518571760268938260544608828017208378436062792581980653043467844284389159435925884731521336805223809049222649874552372676573497110509098941429212961378401761184902390250234585999298135037647853709390803265128558710383431672409386841314821848625953345836234945114508861921890833145094378447829164485787,2290909140884019351426250008814545735225813230804981825833168241438120125584365814035371010990772186759925886882837107545743421629040643022748869446583860483172598682089887676740059939878553272595424436357723367398096377972698494175572434136161599049698027302739164581483237687791238697379241703838109655701932792883820617202754352159209515775921392841098109717647668579384288444138762640166641466203925793570935398566304261495839675905915184706531257340555764797653386663178215604213661066377035729358506114543600757612373813217341582075351741934166661911856401287953329256496263459473595206461438549716253839581620,16642615813361835581230500131246118445590603247887791817817316273244438476256311337001611675388574331977410141699297630317377151836311293305027088331310025109780248001730816502531361314291505497281231329646213545390817348454790771602982974763540004526670479533111992035177312072478629306988622806347623090425003234077873805375141062348645927401285345899503907001825760439541705306585854742931882134500925066002906885338189163552908934604616236359806104007315451823167682352183241953279551520079950202231330492255621315016646701261669501844925563045252616708085163536257987840050252877140816998011230187115088535718084,16010347999096675182232092054526583890655342476048555695134478148077646319292254202928857709848426726687922101503995183630866920756294444357812738165670087524526688577215556076807546011943089084967115014780281986236650136100212790809186133722139336439667178800133917927993914606420172087843235000579778849526996068548810587854703520128067422195406060143205277668392537421614569464766336104310955572146529110182880365088792241394086157577886083440548786679580400292545275535505024808973895871707731827445166453079771165377996477241584002682623055073167645192536278061988188027824852844065261608054572024963829903461213],"H2j":[3368171208877966911054339907901878144315427177489764716664525147952589494997571345476952466465636584372230416806643927079294770772639785886747559841089671070120102511739419185926825275343129268693107584218806327021288882477748577914215697371729166784288283440868236399459954587383445757960644874348547417850473459042890356424271874499317095341286743556259239705095932387025485711185437452734962326711790258196775033662070121656155183933539103178989257156247756946175745703344908852193344259286268186560067884170926994359970521939453852919421341990972981960061011629945378288288327928173529860414633963687461741921536,21571995110918784658914871089233085747498481392093921476006031602493786671249981878215451382962183306832489322303548281716296137774931836883062638257871799588636736223841397596603236825079859053119441636830060533162035824030490541191082185733831191460351456499274515867869223195196735738841516139421749973183291711819985317821732516820314960505801684638233368245136026792456696584282458766742520555425925807015416047178765452538113430822668214923191463369535833443605844329620997852520039896259519774630621573507729397714725431894641714478634392952187074508209560077240054333035743202911738795412331854359778973195140,14361846248841354239738429614485615020817620015740214377557182447187161532145777460980697522328331383902906916852306307688790083451608130261350491455026208295552005757157547049806867066926847972162187184750531821995727255016828133897770613409484181886065535775699953909464798003780913388918153183011660224430464726560354626850573087079518001579497098985920611294338802921392907919446517107741456227975646401634963060678572780580998274987217038988195161229432595476488751730989311796958677066257365863948226172977171594831544011639884849989931328654207271418544321580100757601201270000125579606365984683036050427736901,3320303882237934822574723730249906877625782534310160672723504685750059065549780868692191634937564489497907122877469551544554741543440051593275714064385262048169355745443620314041833050794531307335253819559894664711581948933864857312882072901440293913927021712377972600011615454373450050526995352982830050256391443830850515525775497974669346917338799122924286263331475349263163070978610950486766234107397409979634217974050928014066919223534136219934067215088896161064759214148618049130963680983012705398939807692207987093138939884157043400363128971664499276483693036909962979142844998423058170845192989653278227244556,11392712315645310673556256100365181042182208368042016535682634838624439633464280578340353342992697843456486856323709208993769929825667198124843256857854149171724638555790573818365215224736100981973384410995558183533272266822358013891089919574254939818330873527463833155579817319890250882056946018928950519405481352273564274138745239339555689528027209630484474043328702633331977168775903350557929023233359205813047128230741363083482041365845075249319178793999005856778680811779083784522911420519825713738930903604514930432327435755406403484491228343075922083298289929463367612180095879814334515830338256256962304365507,16128185768089596194287119128971616467728481679140585100708821051566471323843047828854183726318833284371487280925375797724567335316422823058316454263458054143106806709907496680547056853651764349462358556329487313360470751830659004515085115085503406434144518308588359624087795942838829972724870214686385899497790143468039433972576851570857473482249444251166188717970319339154993972583107254198134043017660882069243167380269891894037618164535745069845632928065376946760432598515015966819900477155552863106379035709861023910264232532374352692943776001019180723682584987138149276551856921296644229421379331608912433891787,2216711622729147643119351601279604576561222476671706440839914460051282496368367881534683081378746937805707571316950268212663028051018612966825594397873907399847514954700788018713085783872783310865267981225782070802491186153117333152717062661110252994273036185050571252614763467112197381544773361260703440205625252670499456016034457927577251901944688698835868136916669160283880144324751412122403729270589464975875662168775295336481672192780137765587777958466322897160031233145485380452023766308429956773283861365366429753738225270634870302712702783980696520536919562785018253963272279772947237341901826167911636277398,14567981249611770119460797088791616882610277285940857160650608249425344206528691122331543913667869847178068077135905754757970717904714688019328854767805335556395966314263235325078374161755665460346725642944725762703818596015903905714083108502634334495870792846224658572820537006327415243377500340330706127007814008821793048336577227035431648149947100606065474813247441707074217050761365292856644845629066245995828609114930249956124849463230151850823327413055370077318181578457937246716760725440912216906628033172873929155794447444347775998977195569636526530564164070920144286322379557192066768871877841501668738723305,11562467842115790891804601373773643847126621903349499609152938962148770984937205728801191644445725158989276699296504193090664088648177394705510081647868491010141118677836328015755807190340752111789458182176683494843129204876774659319228937425442946958815453444622877125277511242659189800732695804577042735408856749044867603169231506434230337165888447884043777386886336176295745762185799165141571995448994795987563473269027183930075484844146542824749783851152327060411300732221330038342605240436682988238960554043191119742665518743299119772957848539797927531910599793668616983919654530567233469044356313491217598173963,14001988942247671750781482079375285966547579414294794319094213847379686940578167330959958747320137628734714588973465688779508774703004652572462868416321674738451567199004872420641775754108356291951642382728451341563463073268234897512437292991864411475522021623042299363078178084134670414407763213420631947305174457007699331702204294303015464925310244650403343929391594959891748515738314022772251420423895070351394216428634037166244804545860754313566530581379130190514697248618490807663014153146208137639940027271688234812971813570187637013722635079779830294526604514749212529717398437104564243590356265592707324430248,22660381208680529934440965587759859630365737502029115748369924654698991903261875827625444059798716389150600717053198039271991446052177985348107490095372700835812383361394955848974961135498980301472468398590372824927166661721168913896457190085269560320077063240744390945543298734163933076390800852847268723891846915780866370885782050245477056357544654583119258014409021504561016925378839878361190561580782875056594285065583655990468688145199834395357403106937935824760810934700883413929457207664342072543405193505090717688282434192414638239406093224709925453132516053056802277292184257441746331824932943075086343111278,20472030140330590554727016751322746521411547021589348812503605132754052870300345339453032427074737788538570891246727822818774891000538284023878268779231690147875265496447517546051987993131805558030308294615301233476549529141133753715149811029684466002817709334036803452074715441881335148948617848448549417354051160238759910288354822541817903899839091496273435021826344319441409806973908079330351993159801831003550379943098083992503486981995525990398355622285332802868604496636639655839747683821735810491234886789689703654299736502370849656509374303361111199544583501333765966424789805698080099714702838932727164170265,2453173651401016059883376082702788558595819343620938909718003743834761063920578770151771007440124157356829685449240956671627119096461094862434828440771694576875873539491082895345114445338009283914246401641276451109273726841868022516636570181871922631150553766823691471767095455577358060583652290109547591748476465162423200240371828509110384977101559949176482932811774533277255627251591525680337416653414697852938946477765739575989782561041133771451257557157756072849234217247160968445068150218106127891386897699168070200218755068578136094949985380806928006246790329032200529105916916706533850553672076045608730359951,24113152339438360498818613385483602121911555739122745946787379178133957345957135620586264478203421944425299426192146461629084303328006516447630615633641891356240907180660156167532682435848933370915136668244592305335752238307655218128679169067763462102575980085156721937439825798887974559139719995948680828470417607776837167245694714142889348485597791698351034577938495332154328968099025912022930753095015877561713107591709857548795164690012791766454787725487399290632750389338230767552797412606609844617222343058516288469384643892784348204522341997782682670665258025662990169755315957866286658684293611644496873215267,23048127989879822710411192866890144848102725506107457207672066933390327615164057701868652098516421397166175276204189099923035751642625511125320886106285613893278788342927698548384268560900735111168363954600824026890037073968715675372129633119593307084369015870114545021114363768521678984746381386414166722200844864695581741219036038918650136132423598216731404838838590398569938445014697553573715959930243891120229359688175340044395042982004999256741864583061848148945179825358319553305735497035945950407010348447423433336328707080153581767979294379351950056937128181379551873194994067035954630194182060875682649437666,13618893464695086149676203128264379703835247962620883770951238013108147463339903484787069986025297587613907750851693587285998342458273645890621629308654871877706080796956646324471034007240766614380367007821000885398439611969420081154359024999574164769946112634981576459912811818772491470799900760145047753530968995478407930477477944129573287306569838212654312701822189291272987922653156057983889008935259264244527455188704827518079129994488508788103513618119832400499449348458232904888661877972105894911067928574676593878643851258312142433749927142945806711403413926146774157545099025460329680057003565864119710344042,23894029291617241391144328899509691451082120805949912944383938437120322549284785238294999166576087704069349411280857670919349460489513399500828536265895125463653495907166485758411354581066514943080277665731467417672021474933030712874768858153808012182457456133833868682464778542510979705494991241834256525297885337509013426009068419788422403698033836643374538850826433098217327104341285009528115639746062522009884356634868057714134080806096522631119686584895158882950387390079669636785522392222833493980203199840117132536258676406629318977553433626720193118379634005263005358473104730141003648560474105109737111011794,8925336938516965008397109104514048184046286665452569746388287155124102463448431342748346308295582163969585477123381674515410213967775651281608577967919981280923720344420733336038269189964575637162708585549385406099462739524026684819607311522399446887121322482655436562521377082292558533779186792041587188361186852658931953312216304602575717772394803653647861926317392730789837892117863267885605817028617970756887793540591824273228108598874261690153175536884068161483807477696239392976829822163308261960542651335245650622440817598987961098884462409657203750437907285145610244236094931259734945402603438305753971150592,11949666259971918796589430623190075546810486453882961593114781232790528357171489136086300172564872735213582648459678932324553671446193373613445392996846768949427585353892225809922873734606473958012848905522095066153323414491640379067553063059327565094898320425802881846169782611727703042073646692303198048486923691657532734229486488161759607766287874080676488615866925028524263799527274261471472615111756048644281578781133899646868101860588922113737985515123939591333283772116702698675273675787772365936701715064375893211337204849804346824788133348904362412793959284749560448461044309070434592388006426231060171764771,22250566339370324059402215781976249391077086920660167269541657986285216346026428267640441435642495757683689137264020871118649281135403445710476580606390835296225377720486579495200200373576733192798872047011357659910138900430140520045889539388154712432007987497852789128001047310532391671755193946030519165629053752937739899959567496721448943588557458516035029605073085115080892712303741049416122614132971525567297514147438256957998569093867126816514230762539072531021367441808139154778858187018499802649090111006001230394761758788797026721593274233504527845651968558769656875733771044784061166465882679811351871629592],"BigXj":[{"Coords":[107932666477475802631511202367582748861519739569035537904969017494701526323818,27810089900979531039053592509940878404833992140356119628629019981009106058899]},{"Coords":[70488850009775279003934303461546816167586319901288720095232797816893086714940,21365158033407193885213404713050228625397820553043856269267720323259910113340]},{"Coords":[96704419145309517259142970140495022508494287400107594467439362232020961329299,76628584944766298203991062873793502752240767184659143342509677627090500089962]},{"Coords":[28019161860991754547254544009397503028608838172584402384170752184470432984674,108882834276696603625351040619123218095898824500661874818668494090573839581587]},{"Coords":[69854419615803608419512220164651266075688659942948825382651503385261699188382,86209865999364219341605400066204025416938700532196803014526015416182305901566]},{"Coords":[55707469940275855599640808250448173151230633312005616373715718152006593734016,71581471827456608524472614862044126332419275513283203837579704443605501341979]},{"Coords":[31537542564214197931115404850756486671358385103785295421162883744455005249506,31003647934233069190792056145926504346119044635106496026002117518163562078840]},{"Coords":[71459743938853567115182393388387842195822211722537627655935266215390092032802,105621264392663357649957909617094860377111556629887291515711877643951632476111]},{"Coords":[100170179262204638729042299933877814060918019584852761639094198183345507736585,28900877763089774489040863107152228045173480683157331262486804734772631569442]},{"Coords":[3393930126761759176345687233491451168543634500428196687848693751772795262696,55773871461934232294712308387072487465508923595028614508001564000526922809830]},{"Coords":[35436174997161384450863357581481493940397620545951968086180770941965008242533,22941476771782647278770334144010957938195504420883358055133977993491797250976]},{"Coords":[20742591764203230819083960194719627433799141307841650214987882235851644570480,36792680781195360005281832466704518433303594582044389944698351592636972852101]},{"Coords":[78822613167932563650341174247543824338627391764838115664582901884987316485415,29305611808246076472515388603014476455888609363718621630903671994111327870746]},{"Coords":[106662917025753316359017201639970683777210765763056751174154469380644107823988,38376047705320523688829546978146661452201839032747402442602961204420046730181]},{"Coords":[50131378328647772110850225682895027165473791107252577081428683178756073747030,6484525664721285218064077598136507537588284647694850022336064622644441747313]},{"Coords":[63814576207919556970263190432671978386229401573575575774195362165468317841987,52351921007743438678847732376277019290979039258214198300788054101141627584484]},{"Coords":[33074537919982031116943260590723731125144796968052633499149040111855190089892,52462876494517613825042650703891412581466209764861573326649361336309483684004]},{"Coords":[46337244846970653814521818706394664913446423803670640514811670889644615970917,60622380590936530234720907025041106487069869976400399621024354043945489694205]},{"Coords":[68932201886808999446322681662607675293176822755681592496851252047161893154617,102558540543641758967834783938704783088913683989892796677072783324191846467831]},{"Coords":[47093684301174743530406169926797075725911173707597448168332637736184121729220,74517549523358620639964596401882412428175945976473031695393603496712918162101]}],"PaillierPKs":[{"N":22709559588116531632086995360614881758145847958604375585917706994116168375700793376291131544827864145364687259129107134734036373558516565338923959924703156876435469021413354399418993619174071015237246272863140297401272631661028437511282301913323857011886496541494453371682094558243513835287198378640755589750985308457641295136946180231598093936765306071278862423297167033582450972276390473663053961764398615170355333807856718875047329620163477731845253445115727590642190491372191245975524943279344261890117425706855830582201691939059698357650223528988243289388677629074389631868130733940366531485671699566601163615661},{"N":23443957150234287781524191819714980056334495753799141564738532515877512840928595615570444488815473106829833471979932833846134743028112638013245259429585839683894162551870479232892081727695293106142145837752188330564435054323350976552725925455074206192778580457152750035194725712966851385101176362564718763658489874740341398176203077931510475924742361380746164713522692182335455005818339528332609035897638651762193188267900136476551393608916669622907100712471489443414455950510417300576764177277906265582678299980344888299166427651633758323734973558749488731824311505669417847053850760848940423643750519510719400853833},{"N":22287028689259504755807149120904050002396020193634043129060485604472139332057712093383073269246020913354970143960065213561811698182428208504100112877284663913440710058603853492628849020664094889598583038642474751945815658301741607940280803922553940685657785019086609257141579057485855668397778602262577280637009340765489166395694519909332104264865369924039797553524566502151933416185073911748303993059047774791584591703105106437459703251723998725467328206119091524784524659754164199098692948259716816125731645175450298738430174307931086107554346505367596601043514472572775722114263120820933996056766066990263737006037},{"N":21778455942403717802437188616130445569467912356333711523204106321468333958250985526522676150458521139952234508699903096368286173136552336834061186195705878795885628080532376972447127537374960052755412900354192740274699607194495256559382391407619506149746521336051948176770581697936379025338953179299724284866217851767053361169462746892201032000776732741861429352495405542992367041691709412944529198233031428083828538853890568987466209820731450551650370292813109604532198408719181905952928419308306626664706489746484860069309396704199131581338218405332252354539932883923534658047809067343949198229794022084007329008301},{"N":29488834801717020514549557511738862835006604218586783270956635930974777840977382736818004943434492491272083417763033198615963445455042431681833978353867438176815774128330303688651059852719975859250721567522453513175104614385098138081209372251486732213899964978141377939387124226524201851559541320231331748973500724292675746395999336271645347092285737228923411234511145980962423027637945866866145915490526131803713409632083226573065035861386075817821231913413262072294132940186959486615122177174171466978866072639941945123654758187894442697758141328636666389957637295324259708835849664958476600091423260629670847006421},{"N":25268781854018641821625117526035412649921406362359871346957405856614663043063881662682001256500050697385215601589085313282671061645985003913281457834036290368462929918763869754871955608135979298238482437377851913552755913815405018774915484866488142406303297444296659799278477225336231564636195441498040062964451813900346208766721654100661710718867197194733579941984196715209521167970358227552984230489600141394198144474928084583860744656840175887777161454380202188440178263993042579519816969496156562013371732648143667185817225623397113488180419930136011024805515953457443050643425221010148081098971618629282508806153},{"N":24077030535873838147372990238338423111894661719881851208383511932936303788667059523325649062922462968249640702042151293306587810036594125879862518141403476609262478705296844024060273562609291573351215091787555942245982552314643486135981274381916357213038852978171063476276539384812002232533351978097782562939609101707149234139391638125337919614533689982228496010017193463462456934753130533077727108799001253943486336718218272844533405886783727956436625979626270665501149887064412642510585330023269746464208739229956710668053204092869919317416558618819105166451453240320574158658174090376334547079951345889147202424197},{"N":24121210025310295136286367465067731861316363403302816495348899075683542883649267862423504534408270521528934904000166037695519824119622953526124849500602533136680339478221010232315859804261374907195769559713293619918530079931895046819311703445607618111244570268187554380693098539122537784889700313005700764528116670706472264450599583329582635827622249925780628859318211609939169828662135675938640346560681426019582628979275573701346775265344080547061237809761964885298244705276139799178175782218409921284339726928435810584460742981474010807766522632224843035722465220411812727073796692626221078545796203402892726398073},{"N":26956782591324520026471701264974010002551430844929064558517606333109244333104364565707985261498791802440691867651722784210280888161145432103606824079477489895607158911928686613189674072708812330140444741131333062722881890279580684791181148664415766399323289281546841599984936640417820094077391333063403828290767644884268872176714175866593843027335088472731880830448148161449695591865312724115778446298294191846018327598860718546463796845910458753293225328770367785304521228332493000905274903063796918859478998380272311510096333363160486944174426731511854410356169028732110892177884127982236790065871058497952170624401},{"N":26249557760815986852034237905417683014048371748204856284575862917968310785883486514046189771449794410062311941320778404041317694258818896788913080156960590072834802977027251267292982532721343074208805165986815554608059680417209847673748867108719737464989377176319950884300513507127044766841349776517208994115342645229445634306184178062065483947743824551463650982111893910449653832587022792656303977671598375329018430362166017195461057586254287305421091325058340750141735758488815547176349755224428765382123772435956499576803085012124378000542928725389368171404677133866847871236251441021957443853014282022367009685861},{"N":29234737641692976595774236923019314216135921756073342884203680618120226690739166288052322806435356115092650761656136403373733697692050475566331202817414926309882834844059857181882811689758047525443057988160495074334079542319370840285641441603178202467820462588826229922786870937847036888109767951604636584098102615282750014508387427358079100450062680715472456836097388046216848854107984658532128468648705497171277133763535425127577293318939184956565230142817502839346792604559307183239212332206857888330805061669830296766718735240517983609617995793272006065303892130080909658027060291496416496673503247698087863812741},{"N":23656386949781378983561509210223997485938600678969404520355733863050336777307520388106184053630795530040934267843013912848246799628076757878172461266778291537251825140340096706161543161977283845709058224884977213986434571463756330276479208682952096086332163009127424608568458165322976353036562065434426650045708578336603634894217912009997772105108262453019882143577371634194078714264992380438885990335741008955488808069468796086801023973076920357953123958081822096146124559004458043648352764252390085772923647155984579633692639191141425745475545839873632550694666801559519849238477058285069280151324843991596401646381},{"N":23799985430892428550287426639163393896421663100337917557737015159273107046495772196531619480943457572757018895004491581880198797117841320493538657520011738472038586707181276745476787089472101888983238214242261897466709975139313526918983914349699164310009561585851364405464439780111046692215844366708075439030620693316351016954915727063684631173044817825576871464988585229583331260702104268887569088888141481975510438061934915565917441018736997897082388887244599485050548831301667982348795441755679549415459512278548728977097478254566801983960996625453970296380670902503277224729081061542066926552900097298958795919921},{"N":23398981485141581657111580810187356464859260220476400872431878471724619284703169207796437272649895475435460945312990810473873577007856956495840504596329080928974891464665270653430872926713471055976901497303072174459471872022720981442223753911960555794844008812776454183058593769792366230853507105586338576934054995838272457499054915439455088496111012971850904735289245691042597216634196809202787360353382667100073960437339209464655220130141692780283364216457426778903461083049390591667885095066567970867147659207581183606534554025283663685502553767113396678790806758816850832944906936477595076662914396730813902861273},{"N":24645804484208008107774215519843481629641338685651268289287772114412526440944111199969614165736177320304962312701073205538949325003439610780511806547845684862319242490345551374064725883323450769869814834613757570218276860284970150303912936880248283750218053176729988470901025014948637258535944241625099061769802348376561541469733700398108049774899180411488580995483844861534070436865153589414051441506488195269353530135159150725450897767102214976100194473384482425657735122085724544900424323758582364844065404991831422328546732900258700279735848044809564185617079126240413557300335393565946088211107690073344594774029},{"N":23664465666512928010084076006211208070039097235865486451752383277009646489200010451773766854885315852604650109050180997494686499532996982524560956955784208153283884502900612829692080614937231941501430129101050170848135543483642879522140453631883679490750446245717832265221232589489474380464199065201167874127465810334527670252907568617820949350516778153996202871756067806159248004814563340677682071536108582393686279672503548392243690499337315202892692273695083478754736347613219568092769421161385508903701795824994052294039246344316342377047969959511601521901736714883097032290625287691937066549723767146291790114657},{"N":22165609813091667259068375406991183583538522584875908765309739098448534648989953434651686788146626220283972510122914357995219529654582068510398362007031593307847827533082059785375352080923687640731375327188268078188971415753864060723639564145551626769223269559344648109409611860616931934210627553354435590764505138165455042290624193631088250055962033560484870481238850988856340320616852463026890656813658017413542014132396994215496811530247375977104307808133564653689276479112825279061966541271092780066027501498091088819663615972345385914896991989394778860649710938578818683661928070093400675043514978345177529652389},{"N":24352137164919775060505902875895344669551891343219870713119659495462675754712808458066602996522267529841963340495194383402601416044030073771848283771276922546693343786778909195920195728052430645791682092298169597213540403251589258864324656830830912032021695409682689693414793104678019843226941004344886835923010707685858497420014814885662783481710790760565625597934856999445792014460533464855807508832344902590088930105318969772303090927340774137226985715726042801943592444113021856673268564036683304420372700405680896320106848396385562893886698977710031223312091933030330629827691164100994176634674536649129152931477},{"N":24388425323514301995345880181969195093222141730097776998750148283180811486102209130079655780738706237274584643472954914248041737365215477795339570700387683883122567928523036945799350046333477704674538444513982433086664207664876244841911099162128315338715496189423824903190803189243082722638413039421880070666657272413079871744422617706188003161639646693501252928939859937588136677607569634910081471599993513483449765647227570734163189729311880395414909879933139619835138785852476313690881562300854512419432999005203281002911021482679309149225773391703345476483158302622073477221903694296256566718995262186459619480089},{"N":21604728584405813409256303272593334134333518895675489098410576803850613670962405878762275711641486977471395420657043551402890823783906820971712770494973201278527635005537714974340519544361402189093858595896231890523544098157276831993549216761475195055251372273062282101577640320665049775934814411518181030603401788639796770568692007642464803606076672769360069701571162199680486773757848273630254180550410784187377722267755203781450486589090106764541644204842436002216866597611146281471192249537747681020939314396157603364418120170135828923470079746789793341042476885118587449440114091973976013051496269141578521399429}],"ECDSAPub":{"Coords":[82191134404558877049244897640959846424169542769967270904890689024123037541855,102677683688073592669768840687667774566029618427936181452214529135934890152533]}} \ No newline at end of file diff --git a/test/_fixtures/keygen_data_16.json b/test/_fixtures/keygen_data_16.json deleted file mode 100644 index 3c44c3e7..00000000 --- a/test/_fixtures/keygen_data_16.json +++ /dev/null @@ -1 +0,0 @@ -{"PaillierSK":{"N":22165609813091667259068375406991183583538522584875908765309739098448534648989953434651686788146626220283972510122914357995219529654582068510398362007031593307847827533082059785375352080923687640731375327188268078188971415753864060723639564145551626769223269559344648109409611860616931934210627553354435590764505138165455042290624193631088250055962033560484870481238850988856340320616852463026890656813658017413542014132396994215496811530247375977104307808133564653689276479112825279061966541271092780066027501498091088819663615972345385914896991989394778860649710938578818683661928070093400675043514978345177529652389,"LambdaN":11082804906545833629534187703495591791769261292437954382654869549224267324494976717325843394073313110141986255061457178997609764827291034255199181003515796653923913766541029892687676040461843820365687663594134039094485707876932030361819782072775813384611634779672324054704805930308465967105313776677217795382103482811684136932594114631105440501840986607936453268757289972037492590446285285417402057077970323925294672957952006855384675708953186442981342880405836413264641594000106088374272978416072507912659832441173593021193146646352350974664997375941765568950485633632240512504114853319497993283674813319295663440262,"PhiN":22165609813091667259068375406991183583538522584875908765309739098448534648989953434651686788146626220283972510122914357995219529654582068510398362007031593307847827533082059785375352080923687640731375327188268078188971415753864060723639564145551626769223269559344648109409611860616931934210627553354435590764206965623368273865188229262210881003681973215872906537514579944074985180892570570834804114155940647850589345915904013710769351417906372885962685760811672826529283188000212176748545956832145015825319664882347186042386293292704701949329994751883531137900971267264481025008229706638995986567349626638591326880524},"NTildei":31466961232199038206393986199348595708256863299176374148227521484010795684260339468184532260347996789772040097386032241172658309499404470468218492541809815234208995118730337303514831281668817831605535229415260143432704661750281094187807328676322407373913844432440683972812394664524853699586055958635280164067281091412249301309251915772998531080870705450343112678791059297982033179252277552572737658097615320288170699408198262523087724946180097295208523307748556241283633289461565623961341136472687878275672606572269060361808996126027608464429012339688636176786148346418213288770613540923635302757146988963110333316781,"H1i":15913403370317249903846545253264583237445426368566054050873204733344285093615027647693061965382356514660489490017289737470216855339451599323161686141225364898734459213317143215419647354792387760477998230133600223913390244574171627679693591136928514907378143973333998319592583595882555481681002615976566590485876365765518571760268938260544608828017208378436062792581980653043467844284389159435925884731521336805223809049222649874552372676573497110509098941429212961378401761184902390250234585999298135037647853709390803265128558710383431672409386841314821848625953345836234945114508861921890833145094378447829164485787,"H2i":23894029291617241391144328899509691451082120805949912944383938437120322549284785238294999166576087704069349411280857670919349460489513399500828536265895125463653495907166485758411354581066514943080277665731467417672021474933030712874768858153808012182457456133833868682464778542510979705494991241834256525297885337509013426009068419788422403698033836643374538850826433098217327104341285009528115639746062522009884356634868057714134080806096522631119686584895158882950387390079669636785522392222833493980203199840117132536258676406629318977553433626720193118379634005263005358473104730141003648560474105109737111011794,"Alpha":9959706977261185891878732878773257490163584794092391182257067851245529697243820714706176440989437576223935771397645343800532305537227582770380829036639907648705472818957509962991707050373446844015628114781558263476732053603473957108959424961274448916493401236528326914864719681447745387399030258989248274613775492785522079835705641146501623150345915073587594886259081808316219986737539638032967461590923333998980913120937180535644378100829359975629179702734291911770700924328899263279218377123516511684128281410681924818800088862845585988515933319408785578560229159669588732823227977027300723439270276183925823085090,"Beta":4281849282902597900590474285850136262934393347464512136546564512902134076527246665985065931963218614217672218571239077526952540610148748595338720130962050839424891788773814066309742616849805033073196036252154415223346480125838357339806926811083204182975223512165755920200927452862547328334912801722331750974780267934893295574376448892524140088894279460929496879763335627335201103129024211095904880789121360879957399886885293191807013386749666086205741148315513905961854521975559521645149349844777944927914330611639547780017903373801835080389383289979331092299073509674339289627955616342581490846849548429337348427999,"P":89025783073833915960816766290199969586903370053841797350383728424601459273065345227621497028582459353543067034545214222909008555428712902889847220148981747208041089640392071775389011276663207507955433280217835762246843968835527996936164675461921585291200962569727802769768597016940722252269836016761610524143,"Q":88364741498824499570815239756307970461543908939904918256704848064481872227203160832160355323419407444018254539051781207078866623611610046578961298556059047347861763351660833649374362148734616039519643406746704352099393479472633485485151549375865973615337785434149430998728247462504468020467826672064350729081,"Xi":41758557092553505304096136439203950905696713644151931415636123468125967041395,"ShareID":70024534756929667616115849317753032895580033020239899587896153938577578972765,"Ks":[70024534756929667616115849317753032895580033020239899587896153938577578972749,70024534756929667616115849317753032895580033020239899587896153938577578972750,70024534756929667616115849317753032895580033020239899587896153938577578972751,70024534756929667616115849317753032895580033020239899587896153938577578972752,70024534756929667616115849317753032895580033020239899587896153938577578972753,70024534756929667616115849317753032895580033020239899587896153938577578972754,70024534756929667616115849317753032895580033020239899587896153938577578972755,70024534756929667616115849317753032895580033020239899587896153938577578972756,70024534756929667616115849317753032895580033020239899587896153938577578972757,70024534756929667616115849317753032895580033020239899587896153938577578972758,70024534756929667616115849317753032895580033020239899587896153938577578972759,70024534756929667616115849317753032895580033020239899587896153938577578972760,70024534756929667616115849317753032895580033020239899587896153938577578972761,70024534756929667616115849317753032895580033020239899587896153938577578972762,70024534756929667616115849317753032895580033020239899587896153938577578972763,70024534756929667616115849317753032895580033020239899587896153938577578972764,70024534756929667616115849317753032895580033020239899587896153938577578972765,70024534756929667616115849317753032895580033020239899587896153938577578972766,70024534756929667616115849317753032895580033020239899587896153938577578972767,70024534756929667616115849317753032895580033020239899587896153938577578972768],"NTildej":[24366917239515824974480442558600034492208859976504581465004349103795399783288421050831073024860369440303795551299953821996018530997630686285237603133194573622718124597460737572013930327249120648302190449742363261573076443183981343509885970573178298207488759436277685910850783372123719807298277837194569211839837465137044422691734879346883675317045008891659749391963717253895556693016508386391015178130161988317310806894350108084212611277788190739249760699147435109968242744158314817905689533615803297627887736048945645075792686416602832677541152918424023805280241226851534199867283487943291927564365275467582581271053,24760645214372673899925400730945520473062951341429554908754617530444794660401836428698520741646966955149111758288194803110363170964340801072472223878272430220722034553855593944561986134993071918255771235073978495918874383067260043443905506152815841034811512510858407909698555608803009379935760654878372301870950275270724586431009354962811874333750886958869738872804882633350285507993032763679234057221556156642769183354423672540429587887851343483914923600996425040023829456198369968692844034517720322057627565080062766276792221145223750390964637842847390939964073972850018793739320669513533403812272268817559996728177,24335507174653830446370401218472354012341984065893977351232759664219171991998539382418393419142907217562914494098827810315198583692551476438232634594991137003295122745831430159532586451010818106345725278793436836406022036374386618877645773128457664942790386603953998246404350465143928182109615440037926218085391564421745517307996722808502413850991173460229650178023548969664557299385141472097112836353938598657235574893430259143862369227601052831476146199261368117297723539373329843815951236997008000605506966102265798289158763516254914284024816124992986001907541315389832578466014006010753144367487203071067653140017,25353120959776139123294155818546513426444543204238814947681743626639583989194265533184090862296087842527526282860965927846515276605818147773016966742984780344247645856238734726222917730082852005118152200740071409410429096265046046476115230269737050878141459099734884888260830179970728221214610731604157017545322535971152193773221758709395769765431078738204491094323008301356895841037132747444047830530409305765562694358003007195242702308043142399969256485870876259711230128209178441443167004632638027691911658424285106297785382963002590496015895572427776988235599297735903480964253948429971597628412447354914215359401,29849885402332341621158797110436829396646924395042456662853244309209629024048299162272105169817115314715561658954210859089958590864101117136365470947498907594068557026997249170993874294161892140147876022164668279854630146959174794473879294364568105935870579392660025720467645329300426773479121856766502569984218591054914763859996476236063750210092775547343099066989888106146219058807079888624162205626100491953381078296178689026680702514982189001052448223393538379392778307314168895065497502603308074595916000270844935723623383768691838356870704054233137068509668072099435779943491520206735659166266930856700483211181,24303346306264095483727907643814355785838936488512300414348142784703917728792656928355740144163123550572150171398192480623395181408570425672723511597546032812698562984141032629389936754449924613948711482870260420456913877526422469201798411517711928654451945040790337077196569240216228957228264615761147375423719114756511538399142649755527243797217920772594702713281103939163745422429156605226253637010451757984598979666631182977221341184990723224510127460146263007980086670575857365789365543477249518437176817144448210584125518855115672157465775432933601089465408090382773104140011964681476656187299047937685144419517,22663176204438991528847068755997123453980704364589354833944958947785385672266299429364336994892902925142195136026995771544990684289261678272550855925683439714148609523477977179010696117909805695701859018966669150739407573082987363056991238107146673103957237104655136409343763639221993038484198677605284199701204669351878989982962102150055730219424526668206392140254467740757469800556697236694088468633665970603098311956910105499246381935436511205439918717236853087415401432056630404175846159692661637004967185601880460514710913037913825633119857629058574151126418040291146967097319384900092639447317903904481362864461,22214406206988221120543596573138808869312423548073528052574227838235500966558488375856182495656208729058219131190228351185002058116343873479198633895772314072671413818939926736318457089940649635331152484030046857163634723835906012553106874988855844579826872824922610248380139635284283310239564378546105159549071234915504686574306652852285495484227675227079507874801353534124836509674143920296971261218965184384289987323806590503991373066703353411925035343072343417173322682200148341574699074894310006001608609036165489022667366737175975429277190015768847957906950063130121905159960720849686267420829596753652148430921,26992054981062895613627607261766199835432715284801801749398907129229048796737348701447929605174559094984645968238323112325575430714478210726667128296579144479334211667227791506349731191531989884599385537951555136889431648507040431760656554949203843341649040209953028348323032563665739842658324687215759862340780391326904566525914822596715715051383829453805370490781186878600411802395931887164480044180689343432959074712196207660797594065685195126347713904229309636698471250350144098081500570797555478540127343168177689831999672573508345263924360426808488416307292793876390765153143370885661040432948994217496537757037,26883601429347938201866566412436359463282736845136879263977010812101340295160083165177085686402734295128738223195845941394861534416081222492334460738589328436684156816061652087254848610272225814333318089300032442695939753398569200283276971829978683842747584203047240258517693679059389343721225356421724973291878661622168915849085533925700422984364421907650824486413330797840743205222070155228532990351439410717713883609930796830287062705670943579996135308824473851899048361474382520461452309816639861239026761274994745411785747289015653392872405877863169928875880404134872170564729075194783267248873823339090853461089,26675898204441883357756938810501612911006923314113656530850642169244358619346060171584915468088311545710004060513299980257359925141562861692364285790755062927815783069742814310907363159744172010043214941961935176791603921250085454102936917126214113873120405883118273636844903335000473865105148550590214462929117780405311499444885924770449779157142014006830224170685309315154438797997384633339817640551850145502452900467824909085498261391267709054450200313476628713250795473832792093350711410373115197160491274663551092524073340836221397352664353235247831158949819050115215290772010284539607969271690219902603821582657,24003425727589170532663869192322030538943945148822062399216337010945961427378027710524236529045097740008239529891693854573603730323074574387306355517555029571396270483790272731994105657673718134894396083438028861748333502807033025075738141563799251049728691667635160338770958887288469952328987442729682278796947289053518986771911122562542149441355230810099948748099507142060010177281487688268845292432759376770532767245812643377347484905682286529844081415426101824234408564247618590677966518836555327692461478356122297916534505785216531638872958168430321684571355170353352724268927780693184938724886624339722183259421,20030939948791694094921106997836532434578994294403521371501479100010836848962747077471607238761388497679145378822499150459403963802326636975589780084279335637070321781313502047027883154267014733038805978970710176410579107929485519779112034850622531520287022547371539439386174878773544830750041302618611105173361798826270784808992652396596786821436733488377837349284332001375201088424331364286550732742247150161681889289004480841207149941594126907534285607712061943572341899739867922754683103581617612214747009636033814762750497302268078808823665919929249386647148964298452596399586628310864464196272071720395192133489,26870132374951553243581913321377246229771795848056596419360924847337540300978229013002723427615100062690126686631934134732102152941473371391783556453709425066357685692036492637888980565254013131275256724381428020710512422112788440607830591932440438849890272166273212125255293837259298348084558313308788645038416611482549103781514142985867750527012906984385110191046837459757808864741583473057341019452578423080700589131792924736182910584032669431737863108910781465411300404077532371983623221078943741087750842713540302692591604785862604978245628364756611702919842339423052849035969584933072813435912401288087398604921,25781309885353513172762417920559862373653633766198016154431702305819993747433843312735651525316421555779956949217599915608247344211910767561492880228357017663462131839160610108626231391786518524635537763772771732022138542377442385539024671393136972077400774477946909998449518641822004119697621239956294809097040644518494643152713366295240127317300380586618659118989790014789381034410565903140125870883802621234783419468923863900036725871332435066935174631607488613764393382263135690909855298574769132391272005233712859895795189174927584736869111985784832037628893972777670733794612566699959726190117505644366934694141,31307948529511772422092081620376528723351660195178245630091738647550584183808045529448767036136429258045017880313805169530174754560039519751935200016137594525166410173049351154227454247975670642857061354284229524586536451868860885813714578893448403685065908393856455188372709054731049692863370865677701391460552630927498629863324809550335559817235997586126538332699529118621351625401581293898546298753212618743290610874832103267345624474884402930254336353399762494911879332332316505133643206864735435683656288655072941785814640312959405902536938955107787448304325831133755028455554235924936888965889253927315459519249,31466961232199038206393986199348595708256863299176374148227521484010795684260339468184532260347996789772040097386032241172658309499404470468218492541809815234208995118730337303514831281668817831605535229415260143432704661750281094187807328676322407373913844432440683972812394664524853699586055958635280164067281091412249301309251915772998531080870705450343112678791059297982033179252277552572737658097615320288170699408198262523087724946180097295208523307748556241283633289461565623961341136472687878275672606572269060361808996126027608464429012339688636176786148346418213288770613540923635302757146988963110333316781,23282315206683722596094270562333648753439051790898100314922005841725502497093211800334393760989042727597691714582193235713639238284172358062468387217727181092939568556559834956352385929118617242221861532950969685568622107078283773942779583910577282365015752267710687089071780861330758005577221151609134583129504364837341221471368611555190375227501319216183854908348755278500330379812379883892909358375120467449644585220805660246421673078936109889143381498767668445860590513918867961598096050612727306953235332046855083649560662539716078578551485777683734466740521988744140757231408246451261769915726695959921765032997,25091337650425677853684475917739333556784369056148930585749057080859640921803414967035499248336819782755466354804640016025044002503128223804670636762370700960312352761126598625504662989187540799606658080278007629478214427447535566556662347722562243890754037326739900472696108231869156013516647618154210840364364919089100138905499001603568088340085110153219085814807927945152975657929969505495173887189020701090313994816079981109190512102678874334588894915787220152560380696231794377692004958328931143825599595181025003997691503128188855105160353707735893011124272774335559316106266020514461879401833904958202494061001,23827659784682250604442454473547796888740733968924087692522596947210995569582513002946432005898923676155984614087332560259943866897650716815951119740918614656692843602108809220144973266843900928325168304104193270024169252614460073574472494366384192690720704949267653372513388389564250659367518167586555169618994627094576635848093242114762843534765611200879960614166650643590955853799316870443339993391685970472310294098785089036360647811365521892090305001153074254408707786436158648387047030717269669710808288303673434511182840032065481730245714970751088620360458026112893074508503440200554493648329036195258926190733],"H1j":[10024025457847388392610646066298514243370787348338532750631360639913721829629888261433439914402718667116400994500512300775136069581637894623537510481269716297031115527602912311323880048384727148486222115704187210174101029381357780998875764924841198846224052749406474209451141960414618133437662859572202780961023516801781475926753784006105642819239485607653090319392184244933555747381471676665633830261574288841173438644814600240117247473386184548108338325639763390271130259071021112922069642676901166841167199223435257080313456925802886649375691201308332777566495693037805296244451983094124223174758130752134991251259,5540062908155010932513159905564312164946355979316528931149460136278288806659772940588319017326328094974853633874382463976169195549392127817304835111543615409573476314059060881338397061412436243810139473181382772109210271463439624149555390649740374635589527762045108740275882849527695527198385706268316952416235237543464363519203592980469637771074904708426157233888490918907104014536294284692202685017252106362206847500376336741712522098586355602155374318553270307953934712780754034315941245597336144803859821983984428471938659224631751193248483706020880124594451403191977963618445462632103562894369717754678411970157,7294264017980791887588541945948527964732046841763268733085682296431903566128312881527716171471646888128877802321111011007465120561544014131687975703500639986893207003039277321438260744935109724584373350656877837682253991859961109267518971621013884413991023503512551591742311046398421527897782104779903020623974791981836764750802585775470044046719785755322826006147242995196401054126149520747563133877218253475355114168420889541015916952420416242677374123641966631897855997275959219115766326404348502491490713975699304986526310844436386187304302850704361098476666746013218735172029033252239873173053183420490728457969,9501218113444747046512167891740890620022448184208745016727575118910400114702536042272711158066289559244823855716406559728787015762712355980741317225927051706399078523944764818407725281098361563758658548109686452917704268397282493394145905917631338144130662786869889947744035847462163212831976185178442327943506290185820473986106267053867388409405767987475830498385924106417897644176202343305711004215516685101951487059182051580662118563531777396290757514364141633090265347173402382594862836539162320425532069699769291364183133350523773491418365804493761877536170212947415911627316964969637971056063543234131063060179,15798786414829945409990379475347092437191933825852017565866427461531342919124334651290935627606571949258216191049074056902849155877229528326934734579833314251986756112086465450838437292200045064209850028597082873902388658379469441564667669701765841537160309665720024332706155566138689213961078587239980763899119769146527020365437175547591597253422987241897416697834718145603044863506510817025716990741255205962477142190641478116356939618991137525950385435749637759382858607750867147376236491183474725313362128439752969796168290272602393139910089130691220986679844969299810559606706770072567820176650336982258175656069,9335293725151276608993402038690349490322365392613976918346481216796454921531989892317554215286413208524498017721329770260220214739976276463115767516661469141467987234112799014449837377419827917305931640946522287484467505347102693011074644574833321939291182991369361351550845549986196632347752029739003400876962371840702829213086378506709453044627207644282674209652698873675164479665879605315024759424379670463637654094152277916485019222649587458037242630015801094579916767996040360006216068355347853880839844214694922100092515535187976540400673364286904799817798092386690711558542096052961324458158162316849747049802,11928753658530568234030789407795275088740952723187227006977773559909074576164921817701724786519460916583196165018163510774039491890001017299531322520325627826211812869166690445989428530376091680807701566180854522056382923625327483414081231404244458202347765643506681512770879868073522880161513490523543914681148241833246281106290736532685240004675518845019764469048182810211653160870255293592651339935498048137995182398802459841631852186888112285076188858851763824315081771524248572039785549974159773606819792419731561145595921289694471859455550756883293661073453125644271107011011223441502328961618975292599286540534,3281434421303304451534752490245528887879239197847942017450979313729063086003376295872507109217827492860554007309921835555072782997029442232019030164252143769859146809734506916627953872016140383116721175515392391691229687480990552997729334078523811275423771755788388400181281035140972235710503768780977567025805917901565574387698038208089499892809008311004708551092635216129712077377038639345772519472468677180077197280667928734700336917165150723117546746441573171713790905181182966896063824517476166929486302044010896828146903022644169171194514314475627079949830761751962833520028060036397259454122764395181619471620,26798335028033483015595995885818313899416775173626251303214746152969095667991567148306665607431284548931904800914249634868412622200397325111043206330920355980127737464934048444736064518743501106031852408038680600709174828761299003903687195970226223339349891916494477088540593890862438659139800883091968208023580402075789145180476758769233643214633776274238005081673345069570155874633220460290011162900873068065044353387042255376321331197145839355270876626896209116281706932058419419985043694684968787877580180579063249938562059688827441196772120556845945709093021801017783532024267437712559776698525435075445312453530,24379152218258906482492311550879222904032299657142525355457269472724266562417862087603238266608926068245433152992105088073531452805187189356790567435332219230651301413762858849116755355885877930185483851669316692179467165059725168458003778120562044911094551614016767541895327106348965256725682881898632251239010971342586248735804355885933092854432575702106523584026168029150861398417670162335859972289331761535391135324650197244391340985538289280848512779115086784546807731473605687728417756436783747883720385660475468617431753857425268742613699673867257484976547014884809737803594445736805689004998882232608324939099,13639308363088689304499602606006748747737150113207488794697369879342136632158898637529348398215211110838650184450613858330095458701807309615170814350482223259077017423473614957663630359321153124867291328161758174033028972972743424022771180662104664036306205285576270109455984955077713540350117086087967860191108122028954920957836754439818988959156002918996099715859267715547983808966864149367592758343569651869960032231333418638792990340363087590766121964019626938526976202582697949104351928836667810574924696014475214582129919944765647849262874087078594478919124600690586319504349329877883243753775251538124197406468,20806324398112704184576243642308446225385834167758222047710915865491553221121456559290405385050181445190026351137186843498701962906728774890279265822922302262674344261443633266351787522423584433088856438680222017039801221837510594012303704942258177163584539612102842678739854493210477613035711103258550560273478479277362352841578985334600196007452719273341052878795457240578018430753780869150598290734861026318283861569123861098217259089119729724503263571923384603566241538064572968952230647186501970761685868678332574820155746476145383468962025352911125509572618602029024652380792594855032573631797517407433780124767,2984534567830588608251691688517562019886934976940239944296177755224193834812017598586976214786265618202828155437088641819872658344085523203617440122990791586663797768559098311449463943487720199704106941788760276946864277974792415345700942642550277726023952217616537482804161899962996481893200668973584167349538844293867619144628567178172496162265433563681342772983054368775009029385174850706677287569940753312983986212778939947598815595002848721076684937312652495527309505744053588382568512842786184034878250903582357463020880854201625144449160004603244837252628379531756302498757122746553391615927560808029960266625,19681285575282653686371866964026575635551812532880664611876190222601081859688141586553347439412758942096084877111883472375168961225184324383968489352875717670106440217006572540605411871630725641391171380023993395232691314662393923848318294382993540810449491616527524662991307157899373490742858664974644838212306475173795164847929404327886006104677091872987173592834296913553225843321065615965897920646645086083927169011172363123935140462214285019059726271437492418936191962060610764641005376370506280067258828239222704103600176916708092576268163001234852617058752894380793333304339677721072271552272594404600260363861,17663259858420311330651766819499911841067663794994694318257191199872170158137865025958007148817857781638492835306514771303332749042829120815317355608633338052028835394702531720709875380635913577846095483312528431723891955957026638053673584169905737554185634030129649039016018518994356839547241764882921390944931575304729587593422442361903863687010228628846862342208853396044641495867576785861723973159597871732538239253298128840563941065388954934551651787261972744712209405583851147359110032083949020208533161960188954813739180009449972293158373021060141688387818302891372350131649013502869609299334048318236045598871,5298970575809274629438935393989318057761764519542767586120836445032263316761487525811021815951911099884013107458570792999455520743412617129043815044943875968069243444902286481323598638834526377417104328855033745156522241109248831526582827196555064828920153555458318257230359794631019067306886747836486535385255549193636393132450664433886493509087281083390290568729201571601929480774638279112348846248022706481056446460853658284203145411150560753280109970030570227674159359532427547564201906120131477615407933400264643596572008335881981150704968737407428485573362254058660832170694074403410494545950595818012264895776,15913403370317249903846545253264583237445426368566054050873204733344285093615027647693061965382356514660489490017289737470216855339451599323161686141225364898734459213317143215419647354792387760477998230133600223913390244574171627679693591136928514907378143973333998319592583595882555481681002615976566590485876365765518571760268938260544608828017208378436062792581980653043467844284389159435925884731521336805223809049222649874552372676573497110509098941429212961378401761184902390250234585999298135037647853709390803265128558710383431672409386841314821848625953345836234945114508861921890833145094378447829164485787,2290909140884019351426250008814545735225813230804981825833168241438120125584365814035371010990772186759925886882837107545743421629040643022748869446583860483172598682089887676740059939878553272595424436357723367398096377972698494175572434136161599049698027302739164581483237687791238697379241703838109655701932792883820617202754352159209515775921392841098109717647668579384288444138762640166641466203925793570935398566304261495839675905915184706531257340555764797653386663178215604213661066377035729358506114543600757612373813217341582075351741934166661911856401287953329256496263459473595206461438549716253839581620,16642615813361835581230500131246118445590603247887791817817316273244438476256311337001611675388574331977410141699297630317377151836311293305027088331310025109780248001730816502531361314291505497281231329646213545390817348454790771602982974763540004526670479533111992035177312072478629306988622806347623090425003234077873805375141062348645927401285345899503907001825760439541705306585854742931882134500925066002906885338189163552908934604616236359806104007315451823167682352183241953279551520079950202231330492255621315016646701261669501844925563045252616708085163536257987840050252877140816998011230187115088535718084,16010347999096675182232092054526583890655342476048555695134478148077646319292254202928857709848426726687922101503995183630866920756294444357812738165670087524526688577215556076807546011943089084967115014780281986236650136100212790809186133722139336439667178800133917927993914606420172087843235000579778849526996068548810587854703520128067422195406060143205277668392537421614569464766336104310955572146529110182880365088792241394086157577886083440548786679580400292545275535505024808973895871707731827445166453079771165377996477241584002682623055073167645192536278061988188027824852844065261608054572024963829903461213],"H2j":[3368171208877966911054339907901878144315427177489764716664525147952589494997571345476952466465636584372230416806643927079294770772639785886747559841089671070120102511739419185926825275343129268693107584218806327021288882477748577914215697371729166784288283440868236399459954587383445757960644874348547417850473459042890356424271874499317095341286743556259239705095932387025485711185437452734962326711790258196775033662070121656155183933539103178989257156247756946175745703344908852193344259286268186560067884170926994359970521939453852919421341990972981960061011629945378288288327928173529860414633963687461741921536,21571995110918784658914871089233085747498481392093921476006031602493786671249981878215451382962183306832489322303548281716296137774931836883062638257871799588636736223841397596603236825079859053119441636830060533162035824030490541191082185733831191460351456499274515867869223195196735738841516139421749973183291711819985317821732516820314960505801684638233368245136026792456696584282458766742520555425925807015416047178765452538113430822668214923191463369535833443605844329620997852520039896259519774630621573507729397714725431894641714478634392952187074508209560077240054333035743202911738795412331854359778973195140,14361846248841354239738429614485615020817620015740214377557182447187161532145777460980697522328331383902906916852306307688790083451608130261350491455026208295552005757157547049806867066926847972162187184750531821995727255016828133897770613409484181886065535775699953909464798003780913388918153183011660224430464726560354626850573087079518001579497098985920611294338802921392907919446517107741456227975646401634963060678572780580998274987217038988195161229432595476488751730989311796958677066257365863948226172977171594831544011639884849989931328654207271418544321580100757601201270000125579606365984683036050427736901,3320303882237934822574723730249906877625782534310160672723504685750059065549780868692191634937564489497907122877469551544554741543440051593275714064385262048169355745443620314041833050794531307335253819559894664711581948933864857312882072901440293913927021712377972600011615454373450050526995352982830050256391443830850515525775497974669346917338799122924286263331475349263163070978610950486766234107397409979634217974050928014066919223534136219934067215088896161064759214148618049130963680983012705398939807692207987093138939884157043400363128971664499276483693036909962979142844998423058170845192989653278227244556,11392712315645310673556256100365181042182208368042016535682634838624439633464280578340353342992697843456486856323709208993769929825667198124843256857854149171724638555790573818365215224736100981973384410995558183533272266822358013891089919574254939818330873527463833155579817319890250882056946018928950519405481352273564274138745239339555689528027209630484474043328702633331977168775903350557929023233359205813047128230741363083482041365845075249319178793999005856778680811779083784522911420519825713738930903604514930432327435755406403484491228343075922083298289929463367612180095879814334515830338256256962304365507,16128185768089596194287119128971616467728481679140585100708821051566471323843047828854183726318833284371487280925375797724567335316422823058316454263458054143106806709907496680547056853651764349462358556329487313360470751830659004515085115085503406434144518308588359624087795942838829972724870214686385899497790143468039433972576851570857473482249444251166188717970319339154993972583107254198134043017660882069243167380269891894037618164535745069845632928065376946760432598515015966819900477155552863106379035709861023910264232532374352692943776001019180723682584987138149276551856921296644229421379331608912433891787,2216711622729147643119351601279604576561222476671706440839914460051282496368367881534683081378746937805707571316950268212663028051018612966825594397873907399847514954700788018713085783872783310865267981225782070802491186153117333152717062661110252994273036185050571252614763467112197381544773361260703440205625252670499456016034457927577251901944688698835868136916669160283880144324751412122403729270589464975875662168775295336481672192780137765587777958466322897160031233145485380452023766308429956773283861365366429753738225270634870302712702783980696520536919562785018253963272279772947237341901826167911636277398,14567981249611770119460797088791616882610277285940857160650608249425344206528691122331543913667869847178068077135905754757970717904714688019328854767805335556395966314263235325078374161755665460346725642944725762703818596015903905714083108502634334495870792846224658572820537006327415243377500340330706127007814008821793048336577227035431648149947100606065474813247441707074217050761365292856644845629066245995828609114930249956124849463230151850823327413055370077318181578457937246716760725440912216906628033172873929155794447444347775998977195569636526530564164070920144286322379557192066768871877841501668738723305,11562467842115790891804601373773643847126621903349499609152938962148770984937205728801191644445725158989276699296504193090664088648177394705510081647868491010141118677836328015755807190340752111789458182176683494843129204876774659319228937425442946958815453444622877125277511242659189800732695804577042735408856749044867603169231506434230337165888447884043777386886336176295745762185799165141571995448994795987563473269027183930075484844146542824749783851152327060411300732221330038342605240436682988238960554043191119742665518743299119772957848539797927531910599793668616983919654530567233469044356313491217598173963,14001988942247671750781482079375285966547579414294794319094213847379686940578167330959958747320137628734714588973465688779508774703004652572462868416321674738451567199004872420641775754108356291951642382728451341563463073268234897512437292991864411475522021623042299363078178084134670414407763213420631947305174457007699331702204294303015464925310244650403343929391594959891748515738314022772251420423895070351394216428634037166244804545860754313566530581379130190514697248618490807663014153146208137639940027271688234812971813570187637013722635079779830294526604514749212529717398437104564243590356265592707324430248,22660381208680529934440965587759859630365737502029115748369924654698991903261875827625444059798716389150600717053198039271991446052177985348107490095372700835812383361394955848974961135498980301472468398590372824927166661721168913896457190085269560320077063240744390945543298734163933076390800852847268723891846915780866370885782050245477056357544654583119258014409021504561016925378839878361190561580782875056594285065583655990468688145199834395357403106937935824760810934700883413929457207664342072543405193505090717688282434192414638239406093224709925453132516053056802277292184257441746331824932943075086343111278,20472030140330590554727016751322746521411547021589348812503605132754052870300345339453032427074737788538570891246727822818774891000538284023878268779231690147875265496447517546051987993131805558030308294615301233476549529141133753715149811029684466002817709334036803452074715441881335148948617848448549417354051160238759910288354822541817903899839091496273435021826344319441409806973908079330351993159801831003550379943098083992503486981995525990398355622285332802868604496636639655839747683821735810491234886789689703654299736502370849656509374303361111199544583501333765966424789805698080099714702838932727164170265,2453173651401016059883376082702788558595819343620938909718003743834761063920578770151771007440124157356829685449240956671627119096461094862434828440771694576875873539491082895345114445338009283914246401641276451109273726841868022516636570181871922631150553766823691471767095455577358060583652290109547591748476465162423200240371828509110384977101559949176482932811774533277255627251591525680337416653414697852938946477765739575989782561041133771451257557157756072849234217247160968445068150218106127891386897699168070200218755068578136094949985380806928006246790329032200529105916916706533850553672076045608730359951,24113152339438360498818613385483602121911555739122745946787379178133957345957135620586264478203421944425299426192146461629084303328006516447630615633641891356240907180660156167532682435848933370915136668244592305335752238307655218128679169067763462102575980085156721937439825798887974559139719995948680828470417607776837167245694714142889348485597791698351034577938495332154328968099025912022930753095015877561713107591709857548795164690012791766454787725487399290632750389338230767552797412606609844617222343058516288469384643892784348204522341997782682670665258025662990169755315957866286658684293611644496873215267,23048127989879822710411192866890144848102725506107457207672066933390327615164057701868652098516421397166175276204189099923035751642625511125320886106285613893278788342927698548384268560900735111168363954600824026890037073968715675372129633119593307084369015870114545021114363768521678984746381386414166722200844864695581741219036038918650136132423598216731404838838590398569938445014697553573715959930243891120229359688175340044395042982004999256741864583061848148945179825358319553305735497035945950407010348447423433336328707080153581767979294379351950056937128181379551873194994067035954630194182060875682649437666,13618893464695086149676203128264379703835247962620883770951238013108147463339903484787069986025297587613907750851693587285998342458273645890621629308654871877706080796956646324471034007240766614380367007821000885398439611969420081154359024999574164769946112634981576459912811818772491470799900760145047753530968995478407930477477944129573287306569838212654312701822189291272987922653156057983889008935259264244527455188704827518079129994488508788103513618119832400499449348458232904888661877972105894911067928574676593878643851258312142433749927142945806711403413926146774157545099025460329680057003565864119710344042,23894029291617241391144328899509691451082120805949912944383938437120322549284785238294999166576087704069349411280857670919349460489513399500828536265895125463653495907166485758411354581066514943080277665731467417672021474933030712874768858153808012182457456133833868682464778542510979705494991241834256525297885337509013426009068419788422403698033836643374538850826433098217327104341285009528115639746062522009884356634868057714134080806096522631119686584895158882950387390079669636785522392222833493980203199840117132536258676406629318977553433626720193118379634005263005358473104730141003648560474105109737111011794,8925336938516965008397109104514048184046286665452569746388287155124102463448431342748346308295582163969585477123381674515410213967775651281608577967919981280923720344420733336038269189964575637162708585549385406099462739524026684819607311522399446887121322482655436562521377082292558533779186792041587188361186852658931953312216304602575717772394803653647861926317392730789837892117863267885605817028617970756887793540591824273228108598874261690153175536884068161483807477696239392976829822163308261960542651335245650622440817598987961098884462409657203750437907285145610244236094931259734945402603438305753971150592,11949666259971918796589430623190075546810486453882961593114781232790528357171489136086300172564872735213582648459678932324553671446193373613445392996846768949427585353892225809922873734606473958012848905522095066153323414491640379067553063059327565094898320425802881846169782611727703042073646692303198048486923691657532734229486488161759607766287874080676488615866925028524263799527274261471472615111756048644281578781133899646868101860588922113737985515123939591333283772116702698675273675787772365936701715064375893211337204849804346824788133348904362412793959284749560448461044309070434592388006426231060171764771,22250566339370324059402215781976249391077086920660167269541657986285216346026428267640441435642495757683689137264020871118649281135403445710476580606390835296225377720486579495200200373576733192798872047011357659910138900430140520045889539388154712432007987497852789128001047310532391671755193946030519165629053752937739899959567496721448943588557458516035029605073085115080892712303741049416122614132971525567297514147438256957998569093867126816514230762539072531021367441808139154778858187018499802649090111006001230394761758788797026721593274233504527845651968558769656875733771044784061166465882679811351871629592],"BigXj":[{"Coords":[107932666477475802631511202367582748861519739569035537904969017494701526323818,27810089900979531039053592509940878404833992140356119628629019981009106058899]},{"Coords":[70488850009775279003934303461546816167586319901288720095232797816893086714940,21365158033407193885213404713050228625397820553043856269267720323259910113340]},{"Coords":[96704419145309517259142970140495022508494287400107594467439362232020961329299,76628584944766298203991062873793502752240767184659143342509677627090500089962]},{"Coords":[28019161860991754547254544009397503028608838172584402384170752184470432984674,108882834276696603625351040619123218095898824500661874818668494090573839581587]},{"Coords":[69854419615803608419512220164651266075688659942948825382651503385261699188382,86209865999364219341605400066204025416938700532196803014526015416182305901566]},{"Coords":[55707469940275855599640808250448173151230633312005616373715718152006593734016,71581471827456608524472614862044126332419275513283203837579704443605501341979]},{"Coords":[31537542564214197931115404850756486671358385103785295421162883744455005249506,31003647934233069190792056145926504346119044635106496026002117518163562078840]},{"Coords":[71459743938853567115182393388387842195822211722537627655935266215390092032802,105621264392663357649957909617094860377111556629887291515711877643951632476111]},{"Coords":[100170179262204638729042299933877814060918019584852761639094198183345507736585,28900877763089774489040863107152228045173480683157331262486804734772631569442]},{"Coords":[3393930126761759176345687233491451168543634500428196687848693751772795262696,55773871461934232294712308387072487465508923595028614508001564000526922809830]},{"Coords":[35436174997161384450863357581481493940397620545951968086180770941965008242533,22941476771782647278770334144010957938195504420883358055133977993491797250976]},{"Coords":[20742591764203230819083960194719627433799141307841650214987882235851644570480,36792680781195360005281832466704518433303594582044389944698351592636972852101]},{"Coords":[78822613167932563650341174247543824338627391764838115664582901884987316485415,29305611808246076472515388603014476455888609363718621630903671994111327870746]},{"Coords":[106662917025753316359017201639970683777210765763056751174154469380644107823988,38376047705320523688829546978146661452201839032747402442602961204420046730181]},{"Coords":[50131378328647772110850225682895027165473791107252577081428683178756073747030,6484525664721285218064077598136507537588284647694850022336064622644441747313]},{"Coords":[63814576207919556970263190432671978386229401573575575774195362165468317841987,52351921007743438678847732376277019290979039258214198300788054101141627584484]},{"Coords":[33074537919982031116943260590723731125144796968052633499149040111855190089892,52462876494517613825042650703891412581466209764861573326649361336309483684004]},{"Coords":[46337244846970653814521818706394664913446423803670640514811670889644615970917,60622380590936530234720907025041106487069869976400399621024354043945489694205]},{"Coords":[68932201886808999446322681662607675293176822755681592496851252047161893154617,102558540543641758967834783938704783088913683989892796677072783324191846467831]},{"Coords":[47093684301174743530406169926797075725911173707597448168332637736184121729220,74517549523358620639964596401882412428175945976473031695393603496712918162101]}],"PaillierPKs":[{"N":22709559588116531632086995360614881758145847958604375585917706994116168375700793376291131544827864145364687259129107134734036373558516565338923959924703156876435469021413354399418993619174071015237246272863140297401272631661028437511282301913323857011886496541494453371682094558243513835287198378640755589750985308457641295136946180231598093936765306071278862423297167033582450972276390473663053961764398615170355333807856718875047329620163477731845253445115727590642190491372191245975524943279344261890117425706855830582201691939059698357650223528988243289388677629074389631868130733940366531485671699566601163615661},{"N":23443957150234287781524191819714980056334495753799141564738532515877512840928595615570444488815473106829833471979932833846134743028112638013245259429585839683894162551870479232892081727695293106142145837752188330564435054323350976552725925455074206192778580457152750035194725712966851385101176362564718763658489874740341398176203077931510475924742361380746164713522692182335455005818339528332609035897638651762193188267900136476551393608916669622907100712471489443414455950510417300576764177277906265582678299980344888299166427651633758323734973558749488731824311505669417847053850760848940423643750519510719400853833},{"N":22287028689259504755807149120904050002396020193634043129060485604472139332057712093383073269246020913354970143960065213561811698182428208504100112877284663913440710058603853492628849020664094889598583038642474751945815658301741607940280803922553940685657785019086609257141579057485855668397778602262577280637009340765489166395694519909332104264865369924039797553524566502151933416185073911748303993059047774791584591703105106437459703251723998725467328206119091524784524659754164199098692948259716816125731645175450298738430174307931086107554346505367596601043514472572775722114263120820933996056766066990263737006037},{"N":21778455942403717802437188616130445569467912356333711523204106321468333958250985526522676150458521139952234508699903096368286173136552336834061186195705878795885628080532376972447127537374960052755412900354192740274699607194495256559382391407619506149746521336051948176770581697936379025338953179299724284866217851767053361169462746892201032000776732741861429352495405542992367041691709412944529198233031428083828538853890568987466209820731450551650370292813109604532198408719181905952928419308306626664706489746484860069309396704199131581338218405332252354539932883923534658047809067343949198229794022084007329008301},{"N":29488834801717020514549557511738862835006604218586783270956635930974777840977382736818004943434492491272083417763033198615963445455042431681833978353867438176815774128330303688651059852719975859250721567522453513175104614385098138081209372251486732213899964978141377939387124226524201851559541320231331748973500724292675746395999336271645347092285737228923411234511145980962423027637945866866145915490526131803713409632083226573065035861386075817821231913413262072294132940186959486615122177174171466978866072639941945123654758187894442697758141328636666389957637295324259708835849664958476600091423260629670847006421},{"N":25268781854018641821625117526035412649921406362359871346957405856614663043063881662682001256500050697385215601589085313282671061645985003913281457834036290368462929918763869754871955608135979298238482437377851913552755913815405018774915484866488142406303297444296659799278477225336231564636195441498040062964451813900346208766721654100661710718867197194733579941984196715209521167970358227552984230489600141394198144474928084583860744656840175887777161454380202188440178263993042579519816969496156562013371732648143667185817225623397113488180419930136011024805515953457443050643425221010148081098971618629282508806153},{"N":24077030535873838147372990238338423111894661719881851208383511932936303788667059523325649062922462968249640702042151293306587810036594125879862518141403476609262478705296844024060273562609291573351215091787555942245982552314643486135981274381916357213038852978171063476276539384812002232533351978097782562939609101707149234139391638125337919614533689982228496010017193463462456934753130533077727108799001253943486336718218272844533405886783727956436625979626270665501149887064412642510585330023269746464208739229956710668053204092869919317416558618819105166451453240320574158658174090376334547079951345889147202424197},{"N":24121210025310295136286367465067731861316363403302816495348899075683542883649267862423504534408270521528934904000166037695519824119622953526124849500602533136680339478221010232315859804261374907195769559713293619918530079931895046819311703445607618111244570268187554380693098539122537784889700313005700764528116670706472264450599583329582635827622249925780628859318211609939169828662135675938640346560681426019582628979275573701346775265344080547061237809761964885298244705276139799178175782218409921284339726928435810584460742981474010807766522632224843035722465220411812727073796692626221078545796203402892726398073},{"N":26956782591324520026471701264974010002551430844929064558517606333109244333104364565707985261498791802440691867651722784210280888161145432103606824079477489895607158911928686613189674072708812330140444741131333062722881890279580684791181148664415766399323289281546841599984936640417820094077391333063403828290767644884268872176714175866593843027335088472731880830448148161449695591865312724115778446298294191846018327598860718546463796845910458753293225328770367785304521228332493000905274903063796918859478998380272311510096333363160486944174426731511854410356169028732110892177884127982236790065871058497952170624401},{"N":26249557760815986852034237905417683014048371748204856284575862917968310785883486514046189771449794410062311941320778404041317694258818896788913080156960590072834802977027251267292982532721343074208805165986815554608059680417209847673748867108719737464989377176319950884300513507127044766841349776517208994115342645229445634306184178062065483947743824551463650982111893910449653832587022792656303977671598375329018430362166017195461057586254287305421091325058340750141735758488815547176349755224428765382123772435956499576803085012124378000542928725389368171404677133866847871236251441021957443853014282022367009685861},{"N":29234737641692976595774236923019314216135921756073342884203680618120226690739166288052322806435356115092650761656136403373733697692050475566331202817414926309882834844059857181882811689758047525443057988160495074334079542319370840285641441603178202467820462588826229922786870937847036888109767951604636584098102615282750014508387427358079100450062680715472456836097388046216848854107984658532128468648705497171277133763535425127577293318939184956565230142817502839346792604559307183239212332206857888330805061669830296766718735240517983609617995793272006065303892130080909658027060291496416496673503247698087863812741},{"N":23656386949781378983561509210223997485938600678969404520355733863050336777307520388106184053630795530040934267843013912848246799628076757878172461266778291537251825140340096706161543161977283845709058224884977213986434571463756330276479208682952096086332163009127424608568458165322976353036562065434426650045708578336603634894217912009997772105108262453019882143577371634194078714264992380438885990335741008955488808069468796086801023973076920357953123958081822096146124559004458043648352764252390085772923647155984579633692639191141425745475545839873632550694666801559519849238477058285069280151324843991596401646381},{"N":23799985430892428550287426639163393896421663100337917557737015159273107046495772196531619480943457572757018895004491581880198797117841320493538657520011738472038586707181276745476787089472101888983238214242261897466709975139313526918983914349699164310009561585851364405464439780111046692215844366708075439030620693316351016954915727063684631173044817825576871464988585229583331260702104268887569088888141481975510438061934915565917441018736997897082388887244599485050548831301667982348795441755679549415459512278548728977097478254566801983960996625453970296380670902503277224729081061542066926552900097298958795919921},{"N":23398981485141581657111580810187356464859260220476400872431878471724619284703169207796437272649895475435460945312990810473873577007856956495840504596329080928974891464665270653430872926713471055976901497303072174459471872022720981442223753911960555794844008812776454183058593769792366230853507105586338576934054995838272457499054915439455088496111012971850904735289245691042597216634196809202787360353382667100073960437339209464655220130141692780283364216457426778903461083049390591667885095066567970867147659207581183606534554025283663685502553767113396678790806758816850832944906936477595076662914396730813902861273},{"N":24645804484208008107774215519843481629641338685651268289287772114412526440944111199969614165736177320304962312701073205538949325003439610780511806547845684862319242490345551374064725883323450769869814834613757570218276860284970150303912936880248283750218053176729988470901025014948637258535944241625099061769802348376561541469733700398108049774899180411488580995483844861534070436865153589414051441506488195269353530135159150725450897767102214976100194473384482425657735122085724544900424323758582364844065404991831422328546732900258700279735848044809564185617079126240413557300335393565946088211107690073344594774029},{"N":23664465666512928010084076006211208070039097235865486451752383277009646489200010451773766854885315852604650109050180997494686499532996982524560956955784208153283884502900612829692080614937231941501430129101050170848135543483642879522140453631883679490750446245717832265221232589489474380464199065201167874127465810334527670252907568617820949350516778153996202871756067806159248004814563340677682071536108582393686279672503548392243690499337315202892692273695083478754736347613219568092769421161385508903701795824994052294039246344316342377047969959511601521901736714883097032290625287691937066549723767146291790114657},{"N":22165609813091667259068375406991183583538522584875908765309739098448534648989953434651686788146626220283972510122914357995219529654582068510398362007031593307847827533082059785375352080923687640731375327188268078188971415753864060723639564145551626769223269559344648109409611860616931934210627553354435590764505138165455042290624193631088250055962033560484870481238850988856340320616852463026890656813658017413542014132396994215496811530247375977104307808133564653689276479112825279061966541271092780066027501498091088819663615972345385914896991989394778860649710938578818683661928070093400675043514978345177529652389},{"N":24352137164919775060505902875895344669551891343219870713119659495462675754712808458066602996522267529841963340495194383402601416044030073771848283771276922546693343786778909195920195728052430645791682092298169597213540403251589258864324656830830912032021695409682689693414793104678019843226941004344886835923010707685858497420014814885662783481710790760565625597934856999445792014460533464855807508832344902590088930105318969772303090927340774137226985715726042801943592444113021856673268564036683304420372700405680896320106848396385562893886698977710031223312091933030330629827691164100994176634674536649129152931477},{"N":24388425323514301995345880181969195093222141730097776998750148283180811486102209130079655780738706237274584643472954914248041737365215477795339570700387683883122567928523036945799350046333477704674538444513982433086664207664876244841911099162128315338715496189423824903190803189243082722638413039421880070666657272413079871744422617706188003161639646693501252928939859937588136677607569634910081471599993513483449765647227570734163189729311880395414909879933139619835138785852476313690881562300854512419432999005203281002911021482679309149225773391703345476483158302622073477221903694296256566718995262186459619480089},{"N":21604728584405813409256303272593334134333518895675489098410576803850613670962405878762275711641486977471395420657043551402890823783906820971712770494973201278527635005537714974340519544361402189093858595896231890523544098157276831993549216761475195055251372273062282101577640320665049775934814411518181030603401788639796770568692007642464803606076672769360069701571162199680486773757848273630254180550410784187377722267755203781450486589090106764541644204842436002216866597611146281471192249537747681020939314396157603364418120170135828923470079746789793341042476885118587449440114091973976013051496269141578521399429}],"ECDSAPub":{"Coords":[82191134404558877049244897640959846424169542769967270904890689024123037541855,102677683688073592669768840687667774566029618427936181452214529135934890152533]}} \ No newline at end of file diff --git a/test/_fixtures/keygen_data_17.json b/test/_fixtures/keygen_data_17.json deleted file mode 100644 index cb10ca4e..00000000 --- a/test/_fixtures/keygen_data_17.json +++ /dev/null @@ -1 +0,0 @@ -{"PaillierSK":{"N":24352137164919775060505902875895344669551891343219870713119659495462675754712808458066602996522267529841963340495194383402601416044030073771848283771276922546693343786778909195920195728052430645791682092298169597213540403251589258864324656830830912032021695409682689693414793104678019843226941004344886835923010707685858497420014814885662783481710790760565625597934856999445792014460533464855807508832344902590088930105318969772303090927340774137226985715726042801943592444113021856673268564036683304420372700405680896320106848396385562893886698977710031223312091933030330629827691164100994176634674536649129152931477,"LambdaN":12176068582459887530252951437947672334775945671609935356559829747731337877356404229033301498261133764920981670247597191701300708022015036885924141885638461273346671893389454597960097864026215322895841046149084798606770201625794629432162328415415456016010847704841344846707396552339009921613470502172443417961348760100373919999837373496739949930585000279434176930929485690708386309874338764494938309393817015225950744271895150127872814429130371691749234637495068436923637423609760718829933419758093954305875379587265198368830543485746440732736804428562414091725666751511558209458554608139387407385200800351104931053958,"PhiN":24352137164919775060505902875895344669551891343219870713119659495462675754712808458066602996522267529841963340495194383402601416044030073771848283771276922546693343786778909195920195728052430645791682092298169597213540403251589258864324656830830912032021695409682689693414793104678019843226941004344886835922697520200747839999674746993479899861170000558868353861858971381416772619748677528989876618787634030451901488543790300255745628858260743383498469274990136873847274847219521437659866839516187908611750759174530396737661086971492881465473608857124828183451333503023116418917109216278774814770401600702209862107916},"NTildei":23282315206683722596094270562333648753439051790898100314922005841725502497093211800334393760989042727597691714582193235713639238284172358062468387217727181092939568556559834956352385929118617242221861532950969685568622107078283773942779583910577282365015752267710687089071780861330758005577221151609134583129504364837341221471368611555190375227501319216183854908348755278500330379812379883892909358375120467449644585220805660246421673078936109889143381498767668445860590513918867961598096050612727306953235332046855083649560662539716078578551485777683734466740521988744140757231408246451261769915726695959921765032997,"H1i":2290909140884019351426250008814545735225813230804981825833168241438120125584365814035371010990772186759925886882837107545743421629040643022748869446583860483172598682089887676740059939878553272595424436357723367398096377972698494175572434136161599049698027302739164581483237687791238697379241703838109655701932792883820617202754352159209515775921392841098109717647668579384288444138762640166641466203925793570935398566304261495839675905915184706531257340555764797653386663178215604213661066377035729358506114543600757612373813217341582075351741934166661911856401287953329256496263459473595206461438549716253839581620,"H2i":8925336938516965008397109104514048184046286665452569746388287155124102463448431342748346308295582163969585477123381674515410213967775651281608577967919981280923720344420733336038269189964575637162708585549385406099462739524026684819607311522399446887121322482655436562521377082292558533779186792041587188361186852658931953312216304602575717772394803653647861926317392730789837892117863267885605817028617970756887793540591824273228108598874261690153175536884068161483807477696239392976829822163308261960542651335245650622440817598987961098884462409657203750437907285145610244236094931259734945402603438305753971150592,"Alpha":14052590929393112315230081982501236200253714873277037207101916401710344513371189647508929887204825735627615332477786670644289517346736254047162473612278997120262748843756867724468778661620188850029034504791563597467216309179816422727665086561794578789828289516295100692844275783768085748881118091279938150651934123727020798621636824833711542573166872230405471332611295683119013350471036388135623102309421381485500793842030930031995424585677053039618622975168231299478363716889557789996918094047268406620458524404191937687558683929231077431527391970402401362796458704505776358012900408815982278044322402677993029084478,"Beta":2421665804131101946130581769345003970343951571756238728097348197640538804650614451567082212171987824606185475510132307345205334411745284143677250633889772362739045769637398771313359248569939141488654219679537237410760654219935657321366096244140348698567442487841377520115850797025539203584105515301105319774027711396053713780303727676518165410324414902493795443870741950644290545594137547162032587405109165007855127141282272779793383582209789878785313543673685831718471413767497540851463240053198044643541422070250094398728439792352704354673759870862273694997556370399294270842237103068839806516141714914816623092982,"P":84843177071441338702708581159431931319144637057528296152634856708795959974299790924663742293699396195728890585427827136816373430817482208993659442412877448893439383500171344839850261404134843429185139567826959995589764973731695635701882584401863983610330545180586343650123432890402175603415035839966486578881,"Q":68603970320085623019936698173671482862992457062122570002960311158578026183002319606436735842522840362471177237364557297382084272593057315669091277535853795418906033924157505823485493212718306758906360874526034939563859516359654263826136192639359076625723233970002669311152206823488671998553842414217729679259,"Xi":94777363184602411530962839919552341908250111571031024827081123501647379254585,"ShareID":70024534756929667616115849317753032895580033020239899587896153938577578972766,"Ks":[70024534756929667616115849317753032895580033020239899587896153938577578972749,70024534756929667616115849317753032895580033020239899587896153938577578972750,70024534756929667616115849317753032895580033020239899587896153938577578972751,70024534756929667616115849317753032895580033020239899587896153938577578972752,70024534756929667616115849317753032895580033020239899587896153938577578972753,70024534756929667616115849317753032895580033020239899587896153938577578972754,70024534756929667616115849317753032895580033020239899587896153938577578972755,70024534756929667616115849317753032895580033020239899587896153938577578972756,70024534756929667616115849317753032895580033020239899587896153938577578972757,70024534756929667616115849317753032895580033020239899587896153938577578972758,70024534756929667616115849317753032895580033020239899587896153938577578972759,70024534756929667616115849317753032895580033020239899587896153938577578972760,70024534756929667616115849317753032895580033020239899587896153938577578972761,70024534756929667616115849317753032895580033020239899587896153938577578972762,70024534756929667616115849317753032895580033020239899587896153938577578972763,70024534756929667616115849317753032895580033020239899587896153938577578972764,70024534756929667616115849317753032895580033020239899587896153938577578972765,70024534756929667616115849317753032895580033020239899587896153938577578972766,70024534756929667616115849317753032895580033020239899587896153938577578972767,70024534756929667616115849317753032895580033020239899587896153938577578972768],"NTildej":[24366917239515824974480442558600034492208859976504581465004349103795399783288421050831073024860369440303795551299953821996018530997630686285237603133194573622718124597460737572013930327249120648302190449742363261573076443183981343509885970573178298207488759436277685910850783372123719807298277837194569211839837465137044422691734879346883675317045008891659749391963717253895556693016508386391015178130161988317310806894350108084212611277788190739249760699147435109968242744158314817905689533615803297627887736048945645075792686416602832677541152918424023805280241226851534199867283487943291927564365275467582581271053,24760645214372673899925400730945520473062951341429554908754617530444794660401836428698520741646966955149111758288194803110363170964340801072472223878272430220722034553855593944561986134993071918255771235073978495918874383067260043443905506152815841034811512510858407909698555608803009379935760654878372301870950275270724586431009354962811874333750886958869738872804882633350285507993032763679234057221556156642769183354423672540429587887851343483914923600996425040023829456198369968692844034517720322057627565080062766276792221145223750390964637842847390939964073972850018793739320669513533403812272268817559996728177,24335507174653830446370401218472354012341984065893977351232759664219171991998539382418393419142907217562914494098827810315198583692551476438232634594991137003295122745831430159532586451010818106345725278793436836406022036374386618877645773128457664942790386603953998246404350465143928182109615440037926218085391564421745517307996722808502413850991173460229650178023548969664557299385141472097112836353938598657235574893430259143862369227601052831476146199261368117297723539373329843815951236997008000605506966102265798289158763516254914284024816124992986001907541315389832578466014006010753144367487203071067653140017,25353120959776139123294155818546513426444543204238814947681743626639583989194265533184090862296087842527526282860965927846515276605818147773016966742984780344247645856238734726222917730082852005118152200740071409410429096265046046476115230269737050878141459099734884888260830179970728221214610731604157017545322535971152193773221758709395769765431078738204491094323008301356895841037132747444047830530409305765562694358003007195242702308043142399969256485870876259711230128209178441443167004632638027691911658424285106297785382963002590496015895572427776988235599297735903480964253948429971597628412447354914215359401,29849885402332341621158797110436829396646924395042456662853244309209629024048299162272105169817115314715561658954210859089958590864101117136365470947498907594068557026997249170993874294161892140147876022164668279854630146959174794473879294364568105935870579392660025720467645329300426773479121856766502569984218591054914763859996476236063750210092775547343099066989888106146219058807079888624162205626100491953381078296178689026680702514982189001052448223393538379392778307314168895065497502603308074595916000270844935723623383768691838356870704054233137068509668072099435779943491520206735659166266930856700483211181,24303346306264095483727907643814355785838936488512300414348142784703917728792656928355740144163123550572150171398192480623395181408570425672723511597546032812698562984141032629389936754449924613948711482870260420456913877526422469201798411517711928654451945040790337077196569240216228957228264615761147375423719114756511538399142649755527243797217920772594702713281103939163745422429156605226253637010451757984598979666631182977221341184990723224510127460146263007980086670575857365789365543477249518437176817144448210584125518855115672157465775432933601089465408090382773104140011964681476656187299047937685144419517,22663176204438991528847068755997123453980704364589354833944958947785385672266299429364336994892902925142195136026995771544990684289261678272550855925683439714148609523477977179010696117909805695701859018966669150739407573082987363056991238107146673103957237104655136409343763639221993038484198677605284199701204669351878989982962102150055730219424526668206392140254467740757469800556697236694088468633665970603098311956910105499246381935436511205439918717236853087415401432056630404175846159692661637004967185601880460514710913037913825633119857629058574151126418040291146967097319384900092639447317903904481362864461,22214406206988221120543596573138808869312423548073528052574227838235500966558488375856182495656208729058219131190228351185002058116343873479198633895772314072671413818939926736318457089940649635331152484030046857163634723835906012553106874988855844579826872824922610248380139635284283310239564378546105159549071234915504686574306652852285495484227675227079507874801353534124836509674143920296971261218965184384289987323806590503991373066703353411925035343072343417173322682200148341574699074894310006001608609036165489022667366737175975429277190015768847957906950063130121905159960720849686267420829596753652148430921,26992054981062895613627607261766199835432715284801801749398907129229048796737348701447929605174559094984645968238323112325575430714478210726667128296579144479334211667227791506349731191531989884599385537951555136889431648507040431760656554949203843341649040209953028348323032563665739842658324687215759862340780391326904566525914822596715715051383829453805370490781186878600411802395931887164480044180689343432959074712196207660797594065685195126347713904229309636698471250350144098081500570797555478540127343168177689831999672573508345263924360426808488416307292793876390765153143370885661040432948994217496537757037,26883601429347938201866566412436359463282736845136879263977010812101340295160083165177085686402734295128738223195845941394861534416081222492334460738589328436684156816061652087254848610272225814333318089300032442695939753398569200283276971829978683842747584203047240258517693679059389343721225356421724973291878661622168915849085533925700422984364421907650824486413330797840743205222070155228532990351439410717713883609930796830287062705670943579996135308824473851899048361474382520461452309816639861239026761274994745411785747289015653392872405877863169928875880404134872170564729075194783267248873823339090853461089,26675898204441883357756938810501612911006923314113656530850642169244358619346060171584915468088311545710004060513299980257359925141562861692364285790755062927815783069742814310907363159744172010043214941961935176791603921250085454102936917126214113873120405883118273636844903335000473865105148550590214462929117780405311499444885924770449779157142014006830224170685309315154438797997384633339817640551850145502452900467824909085498261391267709054450200313476628713250795473832792093350711410373115197160491274663551092524073340836221397352664353235247831158949819050115215290772010284539607969271690219902603821582657,24003425727589170532663869192322030538943945148822062399216337010945961427378027710524236529045097740008239529891693854573603730323074574387306355517555029571396270483790272731994105657673718134894396083438028861748333502807033025075738141563799251049728691667635160338770958887288469952328987442729682278796947289053518986771911122562542149441355230810099948748099507142060010177281487688268845292432759376770532767245812643377347484905682286529844081415426101824234408564247618590677966518836555327692461478356122297916534505785216531638872958168430321684571355170353352724268927780693184938724886624339722183259421,20030939948791694094921106997836532434578994294403521371501479100010836848962747077471607238761388497679145378822499150459403963802326636975589780084279335637070321781313502047027883154267014733038805978970710176410579107929485519779112034850622531520287022547371539439386174878773544830750041302618611105173361798826270784808992652396596786821436733488377837349284332001375201088424331364286550732742247150161681889289004480841207149941594126907534285607712061943572341899739867922754683103581617612214747009636033814762750497302268078808823665919929249386647148964298452596399586628310864464196272071720395192133489,26870132374951553243581913321377246229771795848056596419360924847337540300978229013002723427615100062690126686631934134732102152941473371391783556453709425066357685692036492637888980565254013131275256724381428020710512422112788440607830591932440438849890272166273212125255293837259298348084558313308788645038416611482549103781514142985867750527012906984385110191046837459757808864741583473057341019452578423080700589131792924736182910584032669431737863108910781465411300404077532371983623221078943741087750842713540302692591604785862604978245628364756611702919842339423052849035969584933072813435912401288087398604921,25781309885353513172762417920559862373653633766198016154431702305819993747433843312735651525316421555779956949217599915608247344211910767561492880228357017663462131839160610108626231391786518524635537763772771732022138542377442385539024671393136972077400774477946909998449518641822004119697621239956294809097040644518494643152713366295240127317300380586618659118989790014789381034410565903140125870883802621234783419468923863900036725871332435066935174631607488613764393382263135690909855298574769132391272005233712859895795189174927584736869111985784832037628893972777670733794612566699959726190117505644366934694141,31307948529511772422092081620376528723351660195178245630091738647550584183808045529448767036136429258045017880313805169530174754560039519751935200016137594525166410173049351154227454247975670642857061354284229524586536451868860885813714578893448403685065908393856455188372709054731049692863370865677701391460552630927498629863324809550335559817235997586126538332699529118621351625401581293898546298753212618743290610874832103267345624474884402930254336353399762494911879332332316505133643206864735435683656288655072941785814640312959405902536938955107787448304325831133755028455554235924936888965889253927315459519249,31466961232199038206393986199348595708256863299176374148227521484010795684260339468184532260347996789772040097386032241172658309499404470468218492541809815234208995118730337303514831281668817831605535229415260143432704661750281094187807328676322407373913844432440683972812394664524853699586055958635280164067281091412249301309251915772998531080870705450343112678791059297982033179252277552572737658097615320288170699408198262523087724946180097295208523307748556241283633289461565623961341136472687878275672606572269060361808996126027608464429012339688636176786148346418213288770613540923635302757146988963110333316781,23282315206683722596094270562333648753439051790898100314922005841725502497093211800334393760989042727597691714582193235713639238284172358062468387217727181092939568556559834956352385929118617242221861532950969685568622107078283773942779583910577282365015752267710687089071780861330758005577221151609134583129504364837341221471368611555190375227501319216183854908348755278500330379812379883892909358375120467449644585220805660246421673078936109889143381498767668445860590513918867961598096050612727306953235332046855083649560662539716078578551485777683734466740521988744140757231408246451261769915726695959921765032997,25091337650425677853684475917739333556784369056148930585749057080859640921803414967035499248336819782755466354804640016025044002503128223804670636762370700960312352761126598625504662989187540799606658080278007629478214427447535566556662347722562243890754037326739900472696108231869156013516647618154210840364364919089100138905499001603568088340085110153219085814807927945152975657929969505495173887189020701090313994816079981109190512102678874334588894915787220152560380696231794377692004958328931143825599595181025003997691503128188855105160353707735893011124272774335559316106266020514461879401833904958202494061001,23827659784682250604442454473547796888740733968924087692522596947210995569582513002946432005898923676155984614087332560259943866897650716815951119740918614656692843602108809220144973266843900928325168304104193270024169252614460073574472494366384192690720704949267653372513388389564250659367518167586555169618994627094576635848093242114762843534765611200879960614166650643590955853799316870443339993391685970472310294098785089036360647811365521892090305001153074254408707786436158648387047030717269669710808288303673434511182840032065481730245714970751088620360458026112893074508503440200554493648329036195258926190733],"H1j":[10024025457847388392610646066298514243370787348338532750631360639913721829629888261433439914402718667116400994500512300775136069581637894623537510481269716297031115527602912311323880048384727148486222115704187210174101029381357780998875764924841198846224052749406474209451141960414618133437662859572202780961023516801781475926753784006105642819239485607653090319392184244933555747381471676665633830261574288841173438644814600240117247473386184548108338325639763390271130259071021112922069642676901166841167199223435257080313456925802886649375691201308332777566495693037805296244451983094124223174758130752134991251259,5540062908155010932513159905564312164946355979316528931149460136278288806659772940588319017326328094974853633874382463976169195549392127817304835111543615409573476314059060881338397061412436243810139473181382772109210271463439624149555390649740374635589527762045108740275882849527695527198385706268316952416235237543464363519203592980469637771074904708426157233888490918907104014536294284692202685017252106362206847500376336741712522098586355602155374318553270307953934712780754034315941245597336144803859821983984428471938659224631751193248483706020880124594451403191977963618445462632103562894369717754678411970157,7294264017980791887588541945948527964732046841763268733085682296431903566128312881527716171471646888128877802321111011007465120561544014131687975703500639986893207003039277321438260744935109724584373350656877837682253991859961109267518971621013884413991023503512551591742311046398421527897782104779903020623974791981836764750802585775470044046719785755322826006147242995196401054126149520747563133877218253475355114168420889541015916952420416242677374123641966631897855997275959219115766326404348502491490713975699304986526310844436386187304302850704361098476666746013218735172029033252239873173053183420490728457969,9501218113444747046512167891740890620022448184208745016727575118910400114702536042272711158066289559244823855716406559728787015762712355980741317225927051706399078523944764818407725281098361563758658548109686452917704268397282493394145905917631338144130662786869889947744035847462163212831976185178442327943506290185820473986106267053867388409405767987475830498385924106417897644176202343305711004215516685101951487059182051580662118563531777396290757514364141633090265347173402382594862836539162320425532069699769291364183133350523773491418365804493761877536170212947415911627316964969637971056063543234131063060179,15798786414829945409990379475347092437191933825852017565866427461531342919124334651290935627606571949258216191049074056902849155877229528326934734579833314251986756112086465450838437292200045064209850028597082873902388658379469441564667669701765841537160309665720024332706155566138689213961078587239980763899119769146527020365437175547591597253422987241897416697834718145603044863506510817025716990741255205962477142190641478116356939618991137525950385435749637759382858607750867147376236491183474725313362128439752969796168290272602393139910089130691220986679844969299810559606706770072567820176650336982258175656069,9335293725151276608993402038690349490322365392613976918346481216796454921531989892317554215286413208524498017721329770260220214739976276463115767516661469141467987234112799014449837377419827917305931640946522287484467505347102693011074644574833321939291182991369361351550845549986196632347752029739003400876962371840702829213086378506709453044627207644282674209652698873675164479665879605315024759424379670463637654094152277916485019222649587458037242630015801094579916767996040360006216068355347853880839844214694922100092515535187976540400673364286904799817798092386690711558542096052961324458158162316849747049802,11928753658530568234030789407795275088740952723187227006977773559909074576164921817701724786519460916583196165018163510774039491890001017299531322520325627826211812869166690445989428530376091680807701566180854522056382923625327483414081231404244458202347765643506681512770879868073522880161513490523543914681148241833246281106290736532685240004675518845019764469048182810211653160870255293592651339935498048137995182398802459841631852186888112285076188858851763824315081771524248572039785549974159773606819792419731561145595921289694471859455550756883293661073453125644271107011011223441502328961618975292599286540534,3281434421303304451534752490245528887879239197847942017450979313729063086003376295872507109217827492860554007309921835555072782997029442232019030164252143769859146809734506916627953872016140383116721175515392391691229687480990552997729334078523811275423771755788388400181281035140972235710503768780977567025805917901565574387698038208089499892809008311004708551092635216129712077377038639345772519472468677180077197280667928734700336917165150723117546746441573171713790905181182966896063824517476166929486302044010896828146903022644169171194514314475627079949830761751962833520028060036397259454122764395181619471620,26798335028033483015595995885818313899416775173626251303214746152969095667991567148306665607431284548931904800914249634868412622200397325111043206330920355980127737464934048444736064518743501106031852408038680600709174828761299003903687195970226223339349891916494477088540593890862438659139800883091968208023580402075789145180476758769233643214633776274238005081673345069570155874633220460290011162900873068065044353387042255376321331197145839355270876626896209116281706932058419419985043694684968787877580180579063249938562059688827441196772120556845945709093021801017783532024267437712559776698525435075445312453530,24379152218258906482492311550879222904032299657142525355457269472724266562417862087603238266608926068245433152992105088073531452805187189356790567435332219230651301413762858849116755355885877930185483851669316692179467165059725168458003778120562044911094551614016767541895327106348965256725682881898632251239010971342586248735804355885933092854432575702106523584026168029150861398417670162335859972289331761535391135324650197244391340985538289280848512779115086784546807731473605687728417756436783747883720385660475468617431753857425268742613699673867257484976547014884809737803594445736805689004998882232608324939099,13639308363088689304499602606006748747737150113207488794697369879342136632158898637529348398215211110838650184450613858330095458701807309615170814350482223259077017423473614957663630359321153124867291328161758174033028972972743424022771180662104664036306205285576270109455984955077713540350117086087967860191108122028954920957836754439818988959156002918996099715859267715547983808966864149367592758343569651869960032231333418638792990340363087590766121964019626938526976202582697949104351928836667810574924696014475214582129919944765647849262874087078594478919124600690586319504349329877883243753775251538124197406468,20806324398112704184576243642308446225385834167758222047710915865491553221121456559290405385050181445190026351137186843498701962906728774890279265822922302262674344261443633266351787522423584433088856438680222017039801221837510594012303704942258177163584539612102842678739854493210477613035711103258550560273478479277362352841578985334600196007452719273341052878795457240578018430753780869150598290734861026318283861569123861098217259089119729724503263571923384603566241538064572968952230647186501970761685868678332574820155746476145383468962025352911125509572618602029024652380792594855032573631797517407433780124767,2984534567830588608251691688517562019886934976940239944296177755224193834812017598586976214786265618202828155437088641819872658344085523203617440122990791586663797768559098311449463943487720199704106941788760276946864277974792415345700942642550277726023952217616537482804161899962996481893200668973584167349538844293867619144628567178172496162265433563681342772983054368775009029385174850706677287569940753312983986212778939947598815595002848721076684937312652495527309505744053588382568512842786184034878250903582357463020880854201625144449160004603244837252628379531756302498757122746553391615927560808029960266625,19681285575282653686371866964026575635551812532880664611876190222601081859688141586553347439412758942096084877111883472375168961225184324383968489352875717670106440217006572540605411871630725641391171380023993395232691314662393923848318294382993540810449491616527524662991307157899373490742858664974644838212306475173795164847929404327886006104677091872987173592834296913553225843321065615965897920646645086083927169011172363123935140462214285019059726271437492418936191962060610764641005376370506280067258828239222704103600176916708092576268163001234852617058752894380793333304339677721072271552272594404600260363861,17663259858420311330651766819499911841067663794994694318257191199872170158137865025958007148817857781638492835306514771303332749042829120815317355608633338052028835394702531720709875380635913577846095483312528431723891955957026638053673584169905737554185634030129649039016018518994356839547241764882921390944931575304729587593422442361903863687010228628846862342208853396044641495867576785861723973159597871732538239253298128840563941065388954934551651787261972744712209405583851147359110032083949020208533161960188954813739180009449972293158373021060141688387818302891372350131649013502869609299334048318236045598871,5298970575809274629438935393989318057761764519542767586120836445032263316761487525811021815951911099884013107458570792999455520743412617129043815044943875968069243444902286481323598638834526377417104328855033745156522241109248831526582827196555064828920153555458318257230359794631019067306886747836486535385255549193636393132450664433886493509087281083390290568729201571601929480774638279112348846248022706481056446460853658284203145411150560753280109970030570227674159359532427547564201906120131477615407933400264643596572008335881981150704968737407428485573362254058660832170694074403410494545950595818012264895776,15913403370317249903846545253264583237445426368566054050873204733344285093615027647693061965382356514660489490017289737470216855339451599323161686141225364898734459213317143215419647354792387760477998230133600223913390244574171627679693591136928514907378143973333998319592583595882555481681002615976566590485876365765518571760268938260544608828017208378436062792581980653043467844284389159435925884731521336805223809049222649874552372676573497110509098941429212961378401761184902390250234585999298135037647853709390803265128558710383431672409386841314821848625953345836234945114508861921890833145094378447829164485787,2290909140884019351426250008814545735225813230804981825833168241438120125584365814035371010990772186759925886882837107545743421629040643022748869446583860483172598682089887676740059939878553272595424436357723367398096377972698494175572434136161599049698027302739164581483237687791238697379241703838109655701932792883820617202754352159209515775921392841098109717647668579384288444138762640166641466203925793570935398566304261495839675905915184706531257340555764797653386663178215604213661066377035729358506114543600757612373813217341582075351741934166661911856401287953329256496263459473595206461438549716253839581620,16642615813361835581230500131246118445590603247887791817817316273244438476256311337001611675388574331977410141699297630317377151836311293305027088331310025109780248001730816502531361314291505497281231329646213545390817348454790771602982974763540004526670479533111992035177312072478629306988622806347623090425003234077873805375141062348645927401285345899503907001825760439541705306585854742931882134500925066002906885338189163552908934604616236359806104007315451823167682352183241953279551520079950202231330492255621315016646701261669501844925563045252616708085163536257987840050252877140816998011230187115088535718084,16010347999096675182232092054526583890655342476048555695134478148077646319292254202928857709848426726687922101503995183630866920756294444357812738165670087524526688577215556076807546011943089084967115014780281986236650136100212790809186133722139336439667178800133917927993914606420172087843235000579778849526996068548810587854703520128067422195406060143205277668392537421614569464766336104310955572146529110182880365088792241394086157577886083440548786679580400292545275535505024808973895871707731827445166453079771165377996477241584002682623055073167645192536278061988188027824852844065261608054572024963829903461213],"H2j":[3368171208877966911054339907901878144315427177489764716664525147952589494997571345476952466465636584372230416806643927079294770772639785886747559841089671070120102511739419185926825275343129268693107584218806327021288882477748577914215697371729166784288283440868236399459954587383445757960644874348547417850473459042890356424271874499317095341286743556259239705095932387025485711185437452734962326711790258196775033662070121656155183933539103178989257156247756946175745703344908852193344259286268186560067884170926994359970521939453852919421341990972981960061011629945378288288327928173529860414633963687461741921536,21571995110918784658914871089233085747498481392093921476006031602493786671249981878215451382962183306832489322303548281716296137774931836883062638257871799588636736223841397596603236825079859053119441636830060533162035824030490541191082185733831191460351456499274515867869223195196735738841516139421749973183291711819985317821732516820314960505801684638233368245136026792456696584282458766742520555425925807015416047178765452538113430822668214923191463369535833443605844329620997852520039896259519774630621573507729397714725431894641714478634392952187074508209560077240054333035743202911738795412331854359778973195140,14361846248841354239738429614485615020817620015740214377557182447187161532145777460980697522328331383902906916852306307688790083451608130261350491455026208295552005757157547049806867066926847972162187184750531821995727255016828133897770613409484181886065535775699953909464798003780913388918153183011660224430464726560354626850573087079518001579497098985920611294338802921392907919446517107741456227975646401634963060678572780580998274987217038988195161229432595476488751730989311796958677066257365863948226172977171594831544011639884849989931328654207271418544321580100757601201270000125579606365984683036050427736901,3320303882237934822574723730249906877625782534310160672723504685750059065549780868692191634937564489497907122877469551544554741543440051593275714064385262048169355745443620314041833050794531307335253819559894664711581948933864857312882072901440293913927021712377972600011615454373450050526995352982830050256391443830850515525775497974669346917338799122924286263331475349263163070978610950486766234107397409979634217974050928014066919223534136219934067215088896161064759214148618049130963680983012705398939807692207987093138939884157043400363128971664499276483693036909962979142844998423058170845192989653278227244556,11392712315645310673556256100365181042182208368042016535682634838624439633464280578340353342992697843456486856323709208993769929825667198124843256857854149171724638555790573818365215224736100981973384410995558183533272266822358013891089919574254939818330873527463833155579817319890250882056946018928950519405481352273564274138745239339555689528027209630484474043328702633331977168775903350557929023233359205813047128230741363083482041365845075249319178793999005856778680811779083784522911420519825713738930903604514930432327435755406403484491228343075922083298289929463367612180095879814334515830338256256962304365507,16128185768089596194287119128971616467728481679140585100708821051566471323843047828854183726318833284371487280925375797724567335316422823058316454263458054143106806709907496680547056853651764349462358556329487313360470751830659004515085115085503406434144518308588359624087795942838829972724870214686385899497790143468039433972576851570857473482249444251166188717970319339154993972583107254198134043017660882069243167380269891894037618164535745069845632928065376946760432598515015966819900477155552863106379035709861023910264232532374352692943776001019180723682584987138149276551856921296644229421379331608912433891787,2216711622729147643119351601279604576561222476671706440839914460051282496368367881534683081378746937805707571316950268212663028051018612966825594397873907399847514954700788018713085783872783310865267981225782070802491186153117333152717062661110252994273036185050571252614763467112197381544773361260703440205625252670499456016034457927577251901944688698835868136916669160283880144324751412122403729270589464975875662168775295336481672192780137765587777958466322897160031233145485380452023766308429956773283861365366429753738225270634870302712702783980696520536919562785018253963272279772947237341901826167911636277398,14567981249611770119460797088791616882610277285940857160650608249425344206528691122331543913667869847178068077135905754757970717904714688019328854767805335556395966314263235325078374161755665460346725642944725762703818596015903905714083108502634334495870792846224658572820537006327415243377500340330706127007814008821793048336577227035431648149947100606065474813247441707074217050761365292856644845629066245995828609114930249956124849463230151850823327413055370077318181578457937246716760725440912216906628033172873929155794447444347775998977195569636526530564164070920144286322379557192066768871877841501668738723305,11562467842115790891804601373773643847126621903349499609152938962148770984937205728801191644445725158989276699296504193090664088648177394705510081647868491010141118677836328015755807190340752111789458182176683494843129204876774659319228937425442946958815453444622877125277511242659189800732695804577042735408856749044867603169231506434230337165888447884043777386886336176295745762185799165141571995448994795987563473269027183930075484844146542824749783851152327060411300732221330038342605240436682988238960554043191119742665518743299119772957848539797927531910599793668616983919654530567233469044356313491217598173963,14001988942247671750781482079375285966547579414294794319094213847379686940578167330959958747320137628734714588973465688779508774703004652572462868416321674738451567199004872420641775754108356291951642382728451341563463073268234897512437292991864411475522021623042299363078178084134670414407763213420631947305174457007699331702204294303015464925310244650403343929391594959891748515738314022772251420423895070351394216428634037166244804545860754313566530581379130190514697248618490807663014153146208137639940027271688234812971813570187637013722635079779830294526604514749212529717398437104564243590356265592707324430248,22660381208680529934440965587759859630365737502029115748369924654698991903261875827625444059798716389150600717053198039271991446052177985348107490095372700835812383361394955848974961135498980301472468398590372824927166661721168913896457190085269560320077063240744390945543298734163933076390800852847268723891846915780866370885782050245477056357544654583119258014409021504561016925378839878361190561580782875056594285065583655990468688145199834395357403106937935824760810934700883413929457207664342072543405193505090717688282434192414638239406093224709925453132516053056802277292184257441746331824932943075086343111278,20472030140330590554727016751322746521411547021589348812503605132754052870300345339453032427074737788538570891246727822818774891000538284023878268779231690147875265496447517546051987993131805558030308294615301233476549529141133753715149811029684466002817709334036803452074715441881335148948617848448549417354051160238759910288354822541817903899839091496273435021826344319441409806973908079330351993159801831003550379943098083992503486981995525990398355622285332802868604496636639655839747683821735810491234886789689703654299736502370849656509374303361111199544583501333765966424789805698080099714702838932727164170265,2453173651401016059883376082702788558595819343620938909718003743834761063920578770151771007440124157356829685449240956671627119096461094862434828440771694576875873539491082895345114445338009283914246401641276451109273726841868022516636570181871922631150553766823691471767095455577358060583652290109547591748476465162423200240371828509110384977101559949176482932811774533277255627251591525680337416653414697852938946477765739575989782561041133771451257557157756072849234217247160968445068150218106127891386897699168070200218755068578136094949985380806928006246790329032200529105916916706533850553672076045608730359951,24113152339438360498818613385483602121911555739122745946787379178133957345957135620586264478203421944425299426192146461629084303328006516447630615633641891356240907180660156167532682435848933370915136668244592305335752238307655218128679169067763462102575980085156721937439825798887974559139719995948680828470417607776837167245694714142889348485597791698351034577938495332154328968099025912022930753095015877561713107591709857548795164690012791766454787725487399290632750389338230767552797412606609844617222343058516288469384643892784348204522341997782682670665258025662990169755315957866286658684293611644496873215267,23048127989879822710411192866890144848102725506107457207672066933390327615164057701868652098516421397166175276204189099923035751642625511125320886106285613893278788342927698548384268560900735111168363954600824026890037073968715675372129633119593307084369015870114545021114363768521678984746381386414166722200844864695581741219036038918650136132423598216731404838838590398569938445014697553573715959930243891120229359688175340044395042982004999256741864583061848148945179825358319553305735497035945950407010348447423433336328707080153581767979294379351950056937128181379551873194994067035954630194182060875682649437666,13618893464695086149676203128264379703835247962620883770951238013108147463339903484787069986025297587613907750851693587285998342458273645890621629308654871877706080796956646324471034007240766614380367007821000885398439611969420081154359024999574164769946112634981576459912811818772491470799900760145047753530968995478407930477477944129573287306569838212654312701822189291272987922653156057983889008935259264244527455188704827518079129994488508788103513618119832400499449348458232904888661877972105894911067928574676593878643851258312142433749927142945806711403413926146774157545099025460329680057003565864119710344042,23894029291617241391144328899509691451082120805949912944383938437120322549284785238294999166576087704069349411280857670919349460489513399500828536265895125463653495907166485758411354581066514943080277665731467417672021474933030712874768858153808012182457456133833868682464778542510979705494991241834256525297885337509013426009068419788422403698033836643374538850826433098217327104341285009528115639746062522009884356634868057714134080806096522631119686584895158882950387390079669636785522392222833493980203199840117132536258676406629318977553433626720193118379634005263005358473104730141003648560474105109737111011794,8925336938516965008397109104514048184046286665452569746388287155124102463448431342748346308295582163969585477123381674515410213967775651281608577967919981280923720344420733336038269189964575637162708585549385406099462739524026684819607311522399446887121322482655436562521377082292558533779186792041587188361186852658931953312216304602575717772394803653647861926317392730789837892117863267885605817028617970756887793540591824273228108598874261690153175536884068161483807477696239392976829822163308261960542651335245650622440817598987961098884462409657203750437907285145610244236094931259734945402603438305753971150592,11949666259971918796589430623190075546810486453882961593114781232790528357171489136086300172564872735213582648459678932324553671446193373613445392996846768949427585353892225809922873734606473958012848905522095066153323414491640379067553063059327565094898320425802881846169782611727703042073646692303198048486923691657532734229486488161759607766287874080676488615866925028524263799527274261471472615111756048644281578781133899646868101860588922113737985515123939591333283772116702698675273675787772365936701715064375893211337204849804346824788133348904362412793959284749560448461044309070434592388006426231060171764771,22250566339370324059402215781976249391077086920660167269541657986285216346026428267640441435642495757683689137264020871118649281135403445710476580606390835296225377720486579495200200373576733192798872047011357659910138900430140520045889539388154712432007987497852789128001047310532391671755193946030519165629053752937739899959567496721448943588557458516035029605073085115080892712303741049416122614132971525567297514147438256957998569093867126816514230762539072531021367441808139154778858187018499802649090111006001230394761758788797026721593274233504527845651968558769656875733771044784061166465882679811351871629592],"BigXj":[{"Coords":[107932666477475802631511202367582748861519739569035537904969017494701526323818,27810089900979531039053592509940878404833992140356119628629019981009106058899]},{"Coords":[70488850009775279003934303461546816167586319901288720095232797816893086714940,21365158033407193885213404713050228625397820553043856269267720323259910113340]},{"Coords":[96704419145309517259142970140495022508494287400107594467439362232020961329299,76628584944766298203991062873793502752240767184659143342509677627090500089962]},{"Coords":[28019161860991754547254544009397503028608838172584402384170752184470432984674,108882834276696603625351040619123218095898824500661874818668494090573839581587]},{"Coords":[69854419615803608419512220164651266075688659942948825382651503385261699188382,86209865999364219341605400066204025416938700532196803014526015416182305901566]},{"Coords":[55707469940275855599640808250448173151230633312005616373715718152006593734016,71581471827456608524472614862044126332419275513283203837579704443605501341979]},{"Coords":[31537542564214197931115404850756486671358385103785295421162883744455005249506,31003647934233069190792056145926504346119044635106496026002117518163562078840]},{"Coords":[71459743938853567115182393388387842195822211722537627655935266215390092032802,105621264392663357649957909617094860377111556629887291515711877643951632476111]},{"Coords":[100170179262204638729042299933877814060918019584852761639094198183345507736585,28900877763089774489040863107152228045173480683157331262486804734772631569442]},{"Coords":[3393930126761759176345687233491451168543634500428196687848693751772795262696,55773871461934232294712308387072487465508923595028614508001564000526922809830]},{"Coords":[35436174997161384450863357581481493940397620545951968086180770941965008242533,22941476771782647278770334144010957938195504420883358055133977993491797250976]},{"Coords":[20742591764203230819083960194719627433799141307841650214987882235851644570480,36792680781195360005281832466704518433303594582044389944698351592636972852101]},{"Coords":[78822613167932563650341174247543824338627391764838115664582901884987316485415,29305611808246076472515388603014476455888609363718621630903671994111327870746]},{"Coords":[106662917025753316359017201639970683777210765763056751174154469380644107823988,38376047705320523688829546978146661452201839032747402442602961204420046730181]},{"Coords":[50131378328647772110850225682895027165473791107252577081428683178756073747030,6484525664721285218064077598136507537588284647694850022336064622644441747313]},{"Coords":[63814576207919556970263190432671978386229401573575575774195362165468317841987,52351921007743438678847732376277019290979039258214198300788054101141627584484]},{"Coords":[33074537919982031116943260590723731125144796968052633499149040111855190089892,52462876494517613825042650703891412581466209764861573326649361336309483684004]},{"Coords":[46337244846970653814521818706394664913446423803670640514811670889644615970917,60622380590936530234720907025041106487069869976400399621024354043945489694205]},{"Coords":[68932201886808999446322681662607675293176822755681592496851252047161893154617,102558540543641758967834783938704783088913683989892796677072783324191846467831]},{"Coords":[47093684301174743530406169926797075725911173707597448168332637736184121729220,74517549523358620639964596401882412428175945976473031695393603496712918162101]}],"PaillierPKs":[{"N":22709559588116531632086995360614881758145847958604375585917706994116168375700793376291131544827864145364687259129107134734036373558516565338923959924703156876435469021413354399418993619174071015237246272863140297401272631661028437511282301913323857011886496541494453371682094558243513835287198378640755589750985308457641295136946180231598093936765306071278862423297167033582450972276390473663053961764398615170355333807856718875047329620163477731845253445115727590642190491372191245975524943279344261890117425706855830582201691939059698357650223528988243289388677629074389631868130733940366531485671699566601163615661},{"N":23443957150234287781524191819714980056334495753799141564738532515877512840928595615570444488815473106829833471979932833846134743028112638013245259429585839683894162551870479232892081727695293106142145837752188330564435054323350976552725925455074206192778580457152750035194725712966851385101176362564718763658489874740341398176203077931510475924742361380746164713522692182335455005818339528332609035897638651762193188267900136476551393608916669622907100712471489443414455950510417300576764177277906265582678299980344888299166427651633758323734973558749488731824311505669417847053850760848940423643750519510719400853833},{"N":22287028689259504755807149120904050002396020193634043129060485604472139332057712093383073269246020913354970143960065213561811698182428208504100112877284663913440710058603853492628849020664094889598583038642474751945815658301741607940280803922553940685657785019086609257141579057485855668397778602262577280637009340765489166395694519909332104264865369924039797553524566502151933416185073911748303993059047774791584591703105106437459703251723998725467328206119091524784524659754164199098692948259716816125731645175450298738430174307931086107554346505367596601043514472572775722114263120820933996056766066990263737006037},{"N":21778455942403717802437188616130445569467912356333711523204106321468333958250985526522676150458521139952234508699903096368286173136552336834061186195705878795885628080532376972447127537374960052755412900354192740274699607194495256559382391407619506149746521336051948176770581697936379025338953179299724284866217851767053361169462746892201032000776732741861429352495405542992367041691709412944529198233031428083828538853890568987466209820731450551650370292813109604532198408719181905952928419308306626664706489746484860069309396704199131581338218405332252354539932883923534658047809067343949198229794022084007329008301},{"N":29488834801717020514549557511738862835006604218586783270956635930974777840977382736818004943434492491272083417763033198615963445455042431681833978353867438176815774128330303688651059852719975859250721567522453513175104614385098138081209372251486732213899964978141377939387124226524201851559541320231331748973500724292675746395999336271645347092285737228923411234511145980962423027637945866866145915490526131803713409632083226573065035861386075817821231913413262072294132940186959486615122177174171466978866072639941945123654758187894442697758141328636666389957637295324259708835849664958476600091423260629670847006421},{"N":25268781854018641821625117526035412649921406362359871346957405856614663043063881662682001256500050697385215601589085313282671061645985003913281457834036290368462929918763869754871955608135979298238482437377851913552755913815405018774915484866488142406303297444296659799278477225336231564636195441498040062964451813900346208766721654100661710718867197194733579941984196715209521167970358227552984230489600141394198144474928084583860744656840175887777161454380202188440178263993042579519816969496156562013371732648143667185817225623397113488180419930136011024805515953457443050643425221010148081098971618629282508806153},{"N":24077030535873838147372990238338423111894661719881851208383511932936303788667059523325649062922462968249640702042151293306587810036594125879862518141403476609262478705296844024060273562609291573351215091787555942245982552314643486135981274381916357213038852978171063476276539384812002232533351978097782562939609101707149234139391638125337919614533689982228496010017193463462456934753130533077727108799001253943486336718218272844533405886783727956436625979626270665501149887064412642510585330023269746464208739229956710668053204092869919317416558618819105166451453240320574158658174090376334547079951345889147202424197},{"N":24121210025310295136286367465067731861316363403302816495348899075683542883649267862423504534408270521528934904000166037695519824119622953526124849500602533136680339478221010232315859804261374907195769559713293619918530079931895046819311703445607618111244570268187554380693098539122537784889700313005700764528116670706472264450599583329582635827622249925780628859318211609939169828662135675938640346560681426019582628979275573701346775265344080547061237809761964885298244705276139799178175782218409921284339726928435810584460742981474010807766522632224843035722465220411812727073796692626221078545796203402892726398073},{"N":26956782591324520026471701264974010002551430844929064558517606333109244333104364565707985261498791802440691867651722784210280888161145432103606824079477489895607158911928686613189674072708812330140444741131333062722881890279580684791181148664415766399323289281546841599984936640417820094077391333063403828290767644884268872176714175866593843027335088472731880830448148161449695591865312724115778446298294191846018327598860718546463796845910458753293225328770367785304521228332493000905274903063796918859478998380272311510096333363160486944174426731511854410356169028732110892177884127982236790065871058497952170624401},{"N":26249557760815986852034237905417683014048371748204856284575862917968310785883486514046189771449794410062311941320778404041317694258818896788913080156960590072834802977027251267292982532721343074208805165986815554608059680417209847673748867108719737464989377176319950884300513507127044766841349776517208994115342645229445634306184178062065483947743824551463650982111893910449653832587022792656303977671598375329018430362166017195461057586254287305421091325058340750141735758488815547176349755224428765382123772435956499576803085012124378000542928725389368171404677133866847871236251441021957443853014282022367009685861},{"N":29234737641692976595774236923019314216135921756073342884203680618120226690739166288052322806435356115092650761656136403373733697692050475566331202817414926309882834844059857181882811689758047525443057988160495074334079542319370840285641441603178202467820462588826229922786870937847036888109767951604636584098102615282750014508387427358079100450062680715472456836097388046216848854107984658532128468648705497171277133763535425127577293318939184956565230142817502839346792604559307183239212332206857888330805061669830296766718735240517983609617995793272006065303892130080909658027060291496416496673503247698087863812741},{"N":23656386949781378983561509210223997485938600678969404520355733863050336777307520388106184053630795530040934267843013912848246799628076757878172461266778291537251825140340096706161543161977283845709058224884977213986434571463756330276479208682952096086332163009127424608568458165322976353036562065434426650045708578336603634894217912009997772105108262453019882143577371634194078714264992380438885990335741008955488808069468796086801023973076920357953123958081822096146124559004458043648352764252390085772923647155984579633692639191141425745475545839873632550694666801559519849238477058285069280151324843991596401646381},{"N":23799985430892428550287426639163393896421663100337917557737015159273107046495772196531619480943457572757018895004491581880198797117841320493538657520011738472038586707181276745476787089472101888983238214242261897466709975139313526918983914349699164310009561585851364405464439780111046692215844366708075439030620693316351016954915727063684631173044817825576871464988585229583331260702104268887569088888141481975510438061934915565917441018736997897082388887244599485050548831301667982348795441755679549415459512278548728977097478254566801983960996625453970296380670902503277224729081061542066926552900097298958795919921},{"N":23398981485141581657111580810187356464859260220476400872431878471724619284703169207796437272649895475435460945312990810473873577007856956495840504596329080928974891464665270653430872926713471055976901497303072174459471872022720981442223753911960555794844008812776454183058593769792366230853507105586338576934054995838272457499054915439455088496111012971850904735289245691042597216634196809202787360353382667100073960437339209464655220130141692780283364216457426778903461083049390591667885095066567970867147659207581183606534554025283663685502553767113396678790806758816850832944906936477595076662914396730813902861273},{"N":24645804484208008107774215519843481629641338685651268289287772114412526440944111199969614165736177320304962312701073205538949325003439610780511806547845684862319242490345551374064725883323450769869814834613757570218276860284970150303912936880248283750218053176729988470901025014948637258535944241625099061769802348376561541469733700398108049774899180411488580995483844861534070436865153589414051441506488195269353530135159150725450897767102214976100194473384482425657735122085724544900424323758582364844065404991831422328546732900258700279735848044809564185617079126240413557300335393565946088211107690073344594774029},{"N":23664465666512928010084076006211208070039097235865486451752383277009646489200010451773766854885315852604650109050180997494686499532996982524560956955784208153283884502900612829692080614937231941501430129101050170848135543483642879522140453631883679490750446245717832265221232589489474380464199065201167874127465810334527670252907568617820949350516778153996202871756067806159248004814563340677682071536108582393686279672503548392243690499337315202892692273695083478754736347613219568092769421161385508903701795824994052294039246344316342377047969959511601521901736714883097032290625287691937066549723767146291790114657},{"N":22165609813091667259068375406991183583538522584875908765309739098448534648989953434651686788146626220283972510122914357995219529654582068510398362007031593307847827533082059785375352080923687640731375327188268078188971415753864060723639564145551626769223269559344648109409611860616931934210627553354435590764505138165455042290624193631088250055962033560484870481238850988856340320616852463026890656813658017413542014132396994215496811530247375977104307808133564653689276479112825279061966541271092780066027501498091088819663615972345385914896991989394778860649710938578818683661928070093400675043514978345177529652389},{"N":24352137164919775060505902875895344669551891343219870713119659495462675754712808458066602996522267529841963340495194383402601416044030073771848283771276922546693343786778909195920195728052430645791682092298169597213540403251589258864324656830830912032021695409682689693414793104678019843226941004344886835923010707685858497420014814885662783481710790760565625597934856999445792014460533464855807508832344902590088930105318969772303090927340774137226985715726042801943592444113021856673268564036683304420372700405680896320106848396385562893886698977710031223312091933030330629827691164100994176634674536649129152931477},{"N":24388425323514301995345880181969195093222141730097776998750148283180811486102209130079655780738706237274584643472954914248041737365215477795339570700387683883122567928523036945799350046333477704674538444513982433086664207664876244841911099162128315338715496189423824903190803189243082722638413039421880070666657272413079871744422617706188003161639646693501252928939859937588136677607569634910081471599993513483449765647227570734163189729311880395414909879933139619835138785852476313690881562300854512419432999005203281002911021482679309149225773391703345476483158302622073477221903694296256566718995262186459619480089},{"N":21604728584405813409256303272593334134333518895675489098410576803850613670962405878762275711641486977471395420657043551402890823783906820971712770494973201278527635005537714974340519544361402189093858595896231890523544098157276831993549216761475195055251372273062282101577640320665049775934814411518181030603401788639796770568692007642464803606076672769360069701571162199680486773757848273630254180550410784187377722267755203781450486589090106764541644204842436002216866597611146281471192249537747681020939314396157603364418120170135828923470079746789793341042476885118587449440114091973976013051496269141578521399429}],"ECDSAPub":{"Coords":[82191134404558877049244897640959846424169542769967270904890689024123037541855,102677683688073592669768840687667774566029618427936181452214529135934890152533]}} \ No newline at end of file diff --git a/test/_fixtures/keygen_data_18.json b/test/_fixtures/keygen_data_18.json deleted file mode 100644 index e45137a4..00000000 --- a/test/_fixtures/keygen_data_18.json +++ /dev/null @@ -1 +0,0 @@ -{"PaillierSK":{"N":24388425323514301995345880181969195093222141730097776998750148283180811486102209130079655780738706237274584643472954914248041737365215477795339570700387683883122567928523036945799350046333477704674538444513982433086664207664876244841911099162128315338715496189423824903190803189243082722638413039421880070666657272413079871744422617706188003161639646693501252928939859937588136677607569634910081471599993513483449765647227570734163189729311880395414909879933139619835138785852476313690881562300854512419432999005203281002911021482679309149225773391703345476483158302622073477221903694296256566718995262186459619480089,"LambdaN":12194212661757150997672940090984597546611070865048888499375074141590405743051104565039827890369353118637292321736477457124020868682607738897669785350193841941561283964261518472899675023166738852337269222256991216543332103832438122420955549581064157669357748094711912451595401594621541361319206519710940035333171365833275404259799128289872896164622906221994929706896736625243896378843627999940490226818214576006845767651361466846383137567221265257326805081550852564397147851348058807070038290230816722978620562446680597507653430461755425272498555388602836684746092723180213795035903295888712120005090386622118166848178,"PhiN":24388425323514301995345880181969195093222141730097776998750148283180811486102209130079655780738706237274584643472954914248041737365215477795339570700387683883122567928523036945799350046333477704674538444513982433086664207664876244841911099162128315338715496189423824903190803189243082722638413039421880070666342731666550808519598256579745792329245812443989859413793473250487792757687255999880980453636429152013691535302722933692766275134442530514653610163101705128794295702696117614140076580461633445957241124893361195015306860923510850544997110777205673369492185446360427590071806591777424240010180773244236333696356},"NTildei":25091337650425677853684475917739333556784369056148930585749057080859640921803414967035499248336819782755466354804640016025044002503128223804670636762370700960312352761126598625504662989187540799606658080278007629478214427447535566556662347722562243890754037326739900472696108231869156013516647618154210840364364919089100138905499001603568088340085110153219085814807927945152975657929969505495173887189020701090313994816079981109190512102678874334588894915787220152560380696231794377692004958328931143825599595181025003997691503128188855105160353707735893011124272774335559316106266020514461879401833904958202494061001,"H1i":16642615813361835581230500131246118445590603247887791817817316273244438476256311337001611675388574331977410141699297630317377151836311293305027088331310025109780248001730816502531361314291505497281231329646213545390817348454790771602982974763540004526670479533111992035177312072478629306988622806347623090425003234077873805375141062348645927401285345899503907001825760439541705306585854742931882134500925066002906885338189163552908934604616236359806104007315451823167682352183241953279551520079950202231330492255621315016646701261669501844925563045252616708085163536257987840050252877140816998011230187115088535718084,"H2i":11949666259971918796589430623190075546810486453882961593114781232790528357171489136086300172564872735213582648459678932324553671446193373613445392996846768949427585353892225809922873734606473958012848905522095066153323414491640379067553063059327565094898320425802881846169782611727703042073646692303198048486923691657532734229486488161759607766287874080676488615866925028524263799527274261471472615111756048644281578781133899646868101860588922113737985515123939591333283772116702698675273675787772365936701715064375893211337204849804346824788133348904362412793959284749560448461044309070434592388006426231060171764771,"Alpha":1883933665576333093372856750825589876999329076627268156118527187905787136732136363597431588195731847768284746071155208690673767222636323549214629298597563796167602296751254146007728174391102718030911844471290981145005280795196016811242379528722563448831864615936479351504895886521098119032423299546532063391146826803176010703524551023223026484109280445069857696941222664181978310501487390068899844120013945420375163472840922730520450141200805336323020429710597909183276290520376116292446665592900744607344225514231776866288528485060878320413819070226014196521854706874288386711879832374114727800262345713659692626811,"Beta":5851055363574082954556777129432766596203758489839108685290416758977712579017340943563245825896712580877405560331631132887589550352530148721386705843521455727882460175699718370781552318461124640138996319639122290100739003901757680221187048006789513509779686716613642494458459017065577056268259889650030745433729985173195729499316216445452281831685738156927153087796086177217804634820557450037682775340348089382676625471006109123571593388615228243954914157002576185317499931873291521285138256401935416804157911303100851778416804464564633185731967656284768984241170658014315274404449303885576433867754925544996398195573,"P":76178191565612021684859563930580610808026402464332350597877688638833395409150948323124787965495994394935699755464624316592174710388828748103068594975449123431533291751055898754573595107193759398720356716991079345955468207107936465853672473247660254147000346739283147758021514179565088222612073469730449720703,"Q":82344228494892113024122223323585331620572434170637541604776450776634546500118260100147659664018385200086866011953777937500353340942206505340119514957376365357716312636577516467598577475579037022147208054327567749071184008183612840073621621501585460207506084758210725804087823437567328817351625901144275855771,"Xi":21132697654031829796316503638681245504439744551032344732587859304671369990364,"ShareID":70024534756929667616115849317753032895580033020239899587896153938577578972767,"Ks":[70024534756929667616115849317753032895580033020239899587896153938577578972749,70024534756929667616115849317753032895580033020239899587896153938577578972750,70024534756929667616115849317753032895580033020239899587896153938577578972751,70024534756929667616115849317753032895580033020239899587896153938577578972752,70024534756929667616115849317753032895580033020239899587896153938577578972753,70024534756929667616115849317753032895580033020239899587896153938577578972754,70024534756929667616115849317753032895580033020239899587896153938577578972755,70024534756929667616115849317753032895580033020239899587896153938577578972756,70024534756929667616115849317753032895580033020239899587896153938577578972757,70024534756929667616115849317753032895580033020239899587896153938577578972758,70024534756929667616115849317753032895580033020239899587896153938577578972759,70024534756929667616115849317753032895580033020239899587896153938577578972760,70024534756929667616115849317753032895580033020239899587896153938577578972761,70024534756929667616115849317753032895580033020239899587896153938577578972762,70024534756929667616115849317753032895580033020239899587896153938577578972763,70024534756929667616115849317753032895580033020239899587896153938577578972764,70024534756929667616115849317753032895580033020239899587896153938577578972765,70024534756929667616115849317753032895580033020239899587896153938577578972766,70024534756929667616115849317753032895580033020239899587896153938577578972767,70024534756929667616115849317753032895580033020239899587896153938577578972768],"NTildej":[24366917239515824974480442558600034492208859976504581465004349103795399783288421050831073024860369440303795551299953821996018530997630686285237603133194573622718124597460737572013930327249120648302190449742363261573076443183981343509885970573178298207488759436277685910850783372123719807298277837194569211839837465137044422691734879346883675317045008891659749391963717253895556693016508386391015178130161988317310806894350108084212611277788190739249760699147435109968242744158314817905689533615803297627887736048945645075792686416602832677541152918424023805280241226851534199867283487943291927564365275467582581271053,24760645214372673899925400730945520473062951341429554908754617530444794660401836428698520741646966955149111758288194803110363170964340801072472223878272430220722034553855593944561986134993071918255771235073978495918874383067260043443905506152815841034811512510858407909698555608803009379935760654878372301870950275270724586431009354962811874333750886958869738872804882633350285507993032763679234057221556156642769183354423672540429587887851343483914923600996425040023829456198369968692844034517720322057627565080062766276792221145223750390964637842847390939964073972850018793739320669513533403812272268817559996728177,24335507174653830446370401218472354012341984065893977351232759664219171991998539382418393419142907217562914494098827810315198583692551476438232634594991137003295122745831430159532586451010818106345725278793436836406022036374386618877645773128457664942790386603953998246404350465143928182109615440037926218085391564421745517307996722808502413850991173460229650178023548969664557299385141472097112836353938598657235574893430259143862369227601052831476146199261368117297723539373329843815951236997008000605506966102265798289158763516254914284024816124992986001907541315389832578466014006010753144367487203071067653140017,25353120959776139123294155818546513426444543204238814947681743626639583989194265533184090862296087842527526282860965927846515276605818147773016966742984780344247645856238734726222917730082852005118152200740071409410429096265046046476115230269737050878141459099734884888260830179970728221214610731604157017545322535971152193773221758709395769765431078738204491094323008301356895841037132747444047830530409305765562694358003007195242702308043142399969256485870876259711230128209178441443167004632638027691911658424285106297785382963002590496015895572427776988235599297735903480964253948429971597628412447354914215359401,29849885402332341621158797110436829396646924395042456662853244309209629024048299162272105169817115314715561658954210859089958590864101117136365470947498907594068557026997249170993874294161892140147876022164668279854630146959174794473879294364568105935870579392660025720467645329300426773479121856766502569984218591054914763859996476236063750210092775547343099066989888106146219058807079888624162205626100491953381078296178689026680702514982189001052448223393538379392778307314168895065497502603308074595916000270844935723623383768691838356870704054233137068509668072099435779943491520206735659166266930856700483211181,24303346306264095483727907643814355785838936488512300414348142784703917728792656928355740144163123550572150171398192480623395181408570425672723511597546032812698562984141032629389936754449924613948711482870260420456913877526422469201798411517711928654451945040790337077196569240216228957228264615761147375423719114756511538399142649755527243797217920772594702713281103939163745422429156605226253637010451757984598979666631182977221341184990723224510127460146263007980086670575857365789365543477249518437176817144448210584125518855115672157465775432933601089465408090382773104140011964681476656187299047937685144419517,22663176204438991528847068755997123453980704364589354833944958947785385672266299429364336994892902925142195136026995771544990684289261678272550855925683439714148609523477977179010696117909805695701859018966669150739407573082987363056991238107146673103957237104655136409343763639221993038484198677605284199701204669351878989982962102150055730219424526668206392140254467740757469800556697236694088468633665970603098311956910105499246381935436511205439918717236853087415401432056630404175846159692661637004967185601880460514710913037913825633119857629058574151126418040291146967097319384900092639447317903904481362864461,22214406206988221120543596573138808869312423548073528052574227838235500966558488375856182495656208729058219131190228351185002058116343873479198633895772314072671413818939926736318457089940649635331152484030046857163634723835906012553106874988855844579826872824922610248380139635284283310239564378546105159549071234915504686574306652852285495484227675227079507874801353534124836509674143920296971261218965184384289987323806590503991373066703353411925035343072343417173322682200148341574699074894310006001608609036165489022667366737175975429277190015768847957906950063130121905159960720849686267420829596753652148430921,26992054981062895613627607261766199835432715284801801749398907129229048796737348701447929605174559094984645968238323112325575430714478210726667128296579144479334211667227791506349731191531989884599385537951555136889431648507040431760656554949203843341649040209953028348323032563665739842658324687215759862340780391326904566525914822596715715051383829453805370490781186878600411802395931887164480044180689343432959074712196207660797594065685195126347713904229309636698471250350144098081500570797555478540127343168177689831999672573508345263924360426808488416307292793876390765153143370885661040432948994217496537757037,26883601429347938201866566412436359463282736845136879263977010812101340295160083165177085686402734295128738223195845941394861534416081222492334460738589328436684156816061652087254848610272225814333318089300032442695939753398569200283276971829978683842747584203047240258517693679059389343721225356421724973291878661622168915849085533925700422984364421907650824486413330797840743205222070155228532990351439410717713883609930796830287062705670943579996135308824473851899048361474382520461452309816639861239026761274994745411785747289015653392872405877863169928875880404134872170564729075194783267248873823339090853461089,26675898204441883357756938810501612911006923314113656530850642169244358619346060171584915468088311545710004060513299980257359925141562861692364285790755062927815783069742814310907363159744172010043214941961935176791603921250085454102936917126214113873120405883118273636844903335000473865105148550590214462929117780405311499444885924770449779157142014006830224170685309315154438797997384633339817640551850145502452900467824909085498261391267709054450200313476628713250795473832792093350711410373115197160491274663551092524073340836221397352664353235247831158949819050115215290772010284539607969271690219902603821582657,24003425727589170532663869192322030538943945148822062399216337010945961427378027710524236529045097740008239529891693854573603730323074574387306355517555029571396270483790272731994105657673718134894396083438028861748333502807033025075738141563799251049728691667635160338770958887288469952328987442729682278796947289053518986771911122562542149441355230810099948748099507142060010177281487688268845292432759376770532767245812643377347484905682286529844081415426101824234408564247618590677966518836555327692461478356122297916534505785216531638872958168430321684571355170353352724268927780693184938724886624339722183259421,20030939948791694094921106997836532434578994294403521371501479100010836848962747077471607238761388497679145378822499150459403963802326636975589780084279335637070321781313502047027883154267014733038805978970710176410579107929485519779112034850622531520287022547371539439386174878773544830750041302618611105173361798826270784808992652396596786821436733488377837349284332001375201088424331364286550732742247150161681889289004480841207149941594126907534285607712061943572341899739867922754683103581617612214747009636033814762750497302268078808823665919929249386647148964298452596399586628310864464196272071720395192133489,26870132374951553243581913321377246229771795848056596419360924847337540300978229013002723427615100062690126686631934134732102152941473371391783556453709425066357685692036492637888980565254013131275256724381428020710512422112788440607830591932440438849890272166273212125255293837259298348084558313308788645038416611482549103781514142985867750527012906984385110191046837459757808864741583473057341019452578423080700589131792924736182910584032669431737863108910781465411300404077532371983623221078943741087750842713540302692591604785862604978245628364756611702919842339423052849035969584933072813435912401288087398604921,25781309885353513172762417920559862373653633766198016154431702305819993747433843312735651525316421555779956949217599915608247344211910767561492880228357017663462131839160610108626231391786518524635537763772771732022138542377442385539024671393136972077400774477946909998449518641822004119697621239956294809097040644518494643152713366295240127317300380586618659118989790014789381034410565903140125870883802621234783419468923863900036725871332435066935174631607488613764393382263135690909855298574769132391272005233712859895795189174927584736869111985784832037628893972777670733794612566699959726190117505644366934694141,31307948529511772422092081620376528723351660195178245630091738647550584183808045529448767036136429258045017880313805169530174754560039519751935200016137594525166410173049351154227454247975670642857061354284229524586536451868860885813714578893448403685065908393856455188372709054731049692863370865677701391460552630927498629863324809550335559817235997586126538332699529118621351625401581293898546298753212618743290610874832103267345624474884402930254336353399762494911879332332316505133643206864735435683656288655072941785814640312959405902536938955107787448304325831133755028455554235924936888965889253927315459519249,31466961232199038206393986199348595708256863299176374148227521484010795684260339468184532260347996789772040097386032241172658309499404470468218492541809815234208995118730337303514831281668817831605535229415260143432704661750281094187807328676322407373913844432440683972812394664524853699586055958635280164067281091412249301309251915772998531080870705450343112678791059297982033179252277552572737658097615320288170699408198262523087724946180097295208523307748556241283633289461565623961341136472687878275672606572269060361808996126027608464429012339688636176786148346418213288770613540923635302757146988963110333316781,23282315206683722596094270562333648753439051790898100314922005841725502497093211800334393760989042727597691714582193235713639238284172358062468387217727181092939568556559834956352385929118617242221861532950969685568622107078283773942779583910577282365015752267710687089071780861330758005577221151609134583129504364837341221471368611555190375227501319216183854908348755278500330379812379883892909358375120467449644585220805660246421673078936109889143381498767668445860590513918867961598096050612727306953235332046855083649560662539716078578551485777683734466740521988744140757231408246451261769915726695959921765032997,25091337650425677853684475917739333556784369056148930585749057080859640921803414967035499248336819782755466354804640016025044002503128223804670636762370700960312352761126598625504662989187540799606658080278007629478214427447535566556662347722562243890754037326739900472696108231869156013516647618154210840364364919089100138905499001603568088340085110153219085814807927945152975657929969505495173887189020701090313994816079981109190512102678874334588894915787220152560380696231794377692004958328931143825599595181025003997691503128188855105160353707735893011124272774335559316106266020514461879401833904958202494061001,23827659784682250604442454473547796888740733968924087692522596947210995569582513002946432005898923676155984614087332560259943866897650716815951119740918614656692843602108809220144973266843900928325168304104193270024169252614460073574472494366384192690720704949267653372513388389564250659367518167586555169618994627094576635848093242114762843534765611200879960614166650643590955853799316870443339993391685970472310294098785089036360647811365521892090305001153074254408707786436158648387047030717269669710808288303673434511182840032065481730245714970751088620360458026112893074508503440200554493648329036195258926190733],"H1j":[10024025457847388392610646066298514243370787348338532750631360639913721829629888261433439914402718667116400994500512300775136069581637894623537510481269716297031115527602912311323880048384727148486222115704187210174101029381357780998875764924841198846224052749406474209451141960414618133437662859572202780961023516801781475926753784006105642819239485607653090319392184244933555747381471676665633830261574288841173438644814600240117247473386184548108338325639763390271130259071021112922069642676901166841167199223435257080313456925802886649375691201308332777566495693037805296244451983094124223174758130752134991251259,5540062908155010932513159905564312164946355979316528931149460136278288806659772940588319017326328094974853633874382463976169195549392127817304835111543615409573476314059060881338397061412436243810139473181382772109210271463439624149555390649740374635589527762045108740275882849527695527198385706268316952416235237543464363519203592980469637771074904708426157233888490918907104014536294284692202685017252106362206847500376336741712522098586355602155374318553270307953934712780754034315941245597336144803859821983984428471938659224631751193248483706020880124594451403191977963618445462632103562894369717754678411970157,7294264017980791887588541945948527964732046841763268733085682296431903566128312881527716171471646888128877802321111011007465120561544014131687975703500639986893207003039277321438260744935109724584373350656877837682253991859961109267518971621013884413991023503512551591742311046398421527897782104779903020623974791981836764750802585775470044046719785755322826006147242995196401054126149520747563133877218253475355114168420889541015916952420416242677374123641966631897855997275959219115766326404348502491490713975699304986526310844436386187304302850704361098476666746013218735172029033252239873173053183420490728457969,9501218113444747046512167891740890620022448184208745016727575118910400114702536042272711158066289559244823855716406559728787015762712355980741317225927051706399078523944764818407725281098361563758658548109686452917704268397282493394145905917631338144130662786869889947744035847462163212831976185178442327943506290185820473986106267053867388409405767987475830498385924106417897644176202343305711004215516685101951487059182051580662118563531777396290757514364141633090265347173402382594862836539162320425532069699769291364183133350523773491418365804493761877536170212947415911627316964969637971056063543234131063060179,15798786414829945409990379475347092437191933825852017565866427461531342919124334651290935627606571949258216191049074056902849155877229528326934734579833314251986756112086465450838437292200045064209850028597082873902388658379469441564667669701765841537160309665720024332706155566138689213961078587239980763899119769146527020365437175547591597253422987241897416697834718145603044863506510817025716990741255205962477142190641478116356939618991137525950385435749637759382858607750867147376236491183474725313362128439752969796168290272602393139910089130691220986679844969299810559606706770072567820176650336982258175656069,9335293725151276608993402038690349490322365392613976918346481216796454921531989892317554215286413208524498017721329770260220214739976276463115767516661469141467987234112799014449837377419827917305931640946522287484467505347102693011074644574833321939291182991369361351550845549986196632347752029739003400876962371840702829213086378506709453044627207644282674209652698873675164479665879605315024759424379670463637654094152277916485019222649587458037242630015801094579916767996040360006216068355347853880839844214694922100092515535187976540400673364286904799817798092386690711558542096052961324458158162316849747049802,11928753658530568234030789407795275088740952723187227006977773559909074576164921817701724786519460916583196165018163510774039491890001017299531322520325627826211812869166690445989428530376091680807701566180854522056382923625327483414081231404244458202347765643506681512770879868073522880161513490523543914681148241833246281106290736532685240004675518845019764469048182810211653160870255293592651339935498048137995182398802459841631852186888112285076188858851763824315081771524248572039785549974159773606819792419731561145595921289694471859455550756883293661073453125644271107011011223441502328961618975292599286540534,3281434421303304451534752490245528887879239197847942017450979313729063086003376295872507109217827492860554007309921835555072782997029442232019030164252143769859146809734506916627953872016140383116721175515392391691229687480990552997729334078523811275423771755788388400181281035140972235710503768780977567025805917901565574387698038208089499892809008311004708551092635216129712077377038639345772519472468677180077197280667928734700336917165150723117546746441573171713790905181182966896063824517476166929486302044010896828146903022644169171194514314475627079949830761751962833520028060036397259454122764395181619471620,26798335028033483015595995885818313899416775173626251303214746152969095667991567148306665607431284548931904800914249634868412622200397325111043206330920355980127737464934048444736064518743501106031852408038680600709174828761299003903687195970226223339349891916494477088540593890862438659139800883091968208023580402075789145180476758769233643214633776274238005081673345069570155874633220460290011162900873068065044353387042255376321331197145839355270876626896209116281706932058419419985043694684968787877580180579063249938562059688827441196772120556845945709093021801017783532024267437712559776698525435075445312453530,24379152218258906482492311550879222904032299657142525355457269472724266562417862087603238266608926068245433152992105088073531452805187189356790567435332219230651301413762858849116755355885877930185483851669316692179467165059725168458003778120562044911094551614016767541895327106348965256725682881898632251239010971342586248735804355885933092854432575702106523584026168029150861398417670162335859972289331761535391135324650197244391340985538289280848512779115086784546807731473605687728417756436783747883720385660475468617431753857425268742613699673867257484976547014884809737803594445736805689004998882232608324939099,13639308363088689304499602606006748747737150113207488794697369879342136632158898637529348398215211110838650184450613858330095458701807309615170814350482223259077017423473614957663630359321153124867291328161758174033028972972743424022771180662104664036306205285576270109455984955077713540350117086087967860191108122028954920957836754439818988959156002918996099715859267715547983808966864149367592758343569651869960032231333418638792990340363087590766121964019626938526976202582697949104351928836667810574924696014475214582129919944765647849262874087078594478919124600690586319504349329877883243753775251538124197406468,20806324398112704184576243642308446225385834167758222047710915865491553221121456559290405385050181445190026351137186843498701962906728774890279265822922302262674344261443633266351787522423584433088856438680222017039801221837510594012303704942258177163584539612102842678739854493210477613035711103258550560273478479277362352841578985334600196007452719273341052878795457240578018430753780869150598290734861026318283861569123861098217259089119729724503263571923384603566241538064572968952230647186501970761685868678332574820155746476145383468962025352911125509572618602029024652380792594855032573631797517407433780124767,2984534567830588608251691688517562019886934976940239944296177755224193834812017598586976214786265618202828155437088641819872658344085523203617440122990791586663797768559098311449463943487720199704106941788760276946864277974792415345700942642550277726023952217616537482804161899962996481893200668973584167349538844293867619144628567178172496162265433563681342772983054368775009029385174850706677287569940753312983986212778939947598815595002848721076684937312652495527309505744053588382568512842786184034878250903582357463020880854201625144449160004603244837252628379531756302498757122746553391615927560808029960266625,19681285575282653686371866964026575635551812532880664611876190222601081859688141586553347439412758942096084877111883472375168961225184324383968489352875717670106440217006572540605411871630725641391171380023993395232691314662393923848318294382993540810449491616527524662991307157899373490742858664974644838212306475173795164847929404327886006104677091872987173592834296913553225843321065615965897920646645086083927169011172363123935140462214285019059726271437492418936191962060610764641005376370506280067258828239222704103600176916708092576268163001234852617058752894380793333304339677721072271552272594404600260363861,17663259858420311330651766819499911841067663794994694318257191199872170158137865025958007148817857781638492835306514771303332749042829120815317355608633338052028835394702531720709875380635913577846095483312528431723891955957026638053673584169905737554185634030129649039016018518994356839547241764882921390944931575304729587593422442361903863687010228628846862342208853396044641495867576785861723973159597871732538239253298128840563941065388954934551651787261972744712209405583851147359110032083949020208533161960188954813739180009449972293158373021060141688387818302891372350131649013502869609299334048318236045598871,5298970575809274629438935393989318057761764519542767586120836445032263316761487525811021815951911099884013107458570792999455520743412617129043815044943875968069243444902286481323598638834526377417104328855033745156522241109248831526582827196555064828920153555458318257230359794631019067306886747836486535385255549193636393132450664433886493509087281083390290568729201571601929480774638279112348846248022706481056446460853658284203145411150560753280109970030570227674159359532427547564201906120131477615407933400264643596572008335881981150704968737407428485573362254058660832170694074403410494545950595818012264895776,15913403370317249903846545253264583237445426368566054050873204733344285093615027647693061965382356514660489490017289737470216855339451599323161686141225364898734459213317143215419647354792387760477998230133600223913390244574171627679693591136928514907378143973333998319592583595882555481681002615976566590485876365765518571760268938260544608828017208378436062792581980653043467844284389159435925884731521336805223809049222649874552372676573497110509098941429212961378401761184902390250234585999298135037647853709390803265128558710383431672409386841314821848625953345836234945114508861921890833145094378447829164485787,2290909140884019351426250008814545735225813230804981825833168241438120125584365814035371010990772186759925886882837107545743421629040643022748869446583860483172598682089887676740059939878553272595424436357723367398096377972698494175572434136161599049698027302739164581483237687791238697379241703838109655701932792883820617202754352159209515775921392841098109717647668579384288444138762640166641466203925793570935398566304261495839675905915184706531257340555764797653386663178215604213661066377035729358506114543600757612373813217341582075351741934166661911856401287953329256496263459473595206461438549716253839581620,16642615813361835581230500131246118445590603247887791817817316273244438476256311337001611675388574331977410141699297630317377151836311293305027088331310025109780248001730816502531361314291505497281231329646213545390817348454790771602982974763540004526670479533111992035177312072478629306988622806347623090425003234077873805375141062348645927401285345899503907001825760439541705306585854742931882134500925066002906885338189163552908934604616236359806104007315451823167682352183241953279551520079950202231330492255621315016646701261669501844925563045252616708085163536257987840050252877140816998011230187115088535718084,16010347999096675182232092054526583890655342476048555695134478148077646319292254202928857709848426726687922101503995183630866920756294444357812738165670087524526688577215556076807546011943089084967115014780281986236650136100212790809186133722139336439667178800133917927993914606420172087843235000579778849526996068548810587854703520128067422195406060143205277668392537421614569464766336104310955572146529110182880365088792241394086157577886083440548786679580400292545275535505024808973895871707731827445166453079771165377996477241584002682623055073167645192536278061988188027824852844065261608054572024963829903461213],"H2j":[3368171208877966911054339907901878144315427177489764716664525147952589494997571345476952466465636584372230416806643927079294770772639785886747559841089671070120102511739419185926825275343129268693107584218806327021288882477748577914215697371729166784288283440868236399459954587383445757960644874348547417850473459042890356424271874499317095341286743556259239705095932387025485711185437452734962326711790258196775033662070121656155183933539103178989257156247756946175745703344908852193344259286268186560067884170926994359970521939453852919421341990972981960061011629945378288288327928173529860414633963687461741921536,21571995110918784658914871089233085747498481392093921476006031602493786671249981878215451382962183306832489322303548281716296137774931836883062638257871799588636736223841397596603236825079859053119441636830060533162035824030490541191082185733831191460351456499274515867869223195196735738841516139421749973183291711819985317821732516820314960505801684638233368245136026792456696584282458766742520555425925807015416047178765452538113430822668214923191463369535833443605844329620997852520039896259519774630621573507729397714725431894641714478634392952187074508209560077240054333035743202911738795412331854359778973195140,14361846248841354239738429614485615020817620015740214377557182447187161532145777460980697522328331383902906916852306307688790083451608130261350491455026208295552005757157547049806867066926847972162187184750531821995727255016828133897770613409484181886065535775699953909464798003780913388918153183011660224430464726560354626850573087079518001579497098985920611294338802921392907919446517107741456227975646401634963060678572780580998274987217038988195161229432595476488751730989311796958677066257365863948226172977171594831544011639884849989931328654207271418544321580100757601201270000125579606365984683036050427736901,3320303882237934822574723730249906877625782534310160672723504685750059065549780868692191634937564489497907122877469551544554741543440051593275714064385262048169355745443620314041833050794531307335253819559894664711581948933864857312882072901440293913927021712377972600011615454373450050526995352982830050256391443830850515525775497974669346917338799122924286263331475349263163070978610950486766234107397409979634217974050928014066919223534136219934067215088896161064759214148618049130963680983012705398939807692207987093138939884157043400363128971664499276483693036909962979142844998423058170845192989653278227244556,11392712315645310673556256100365181042182208368042016535682634838624439633464280578340353342992697843456486856323709208993769929825667198124843256857854149171724638555790573818365215224736100981973384410995558183533272266822358013891089919574254939818330873527463833155579817319890250882056946018928950519405481352273564274138745239339555689528027209630484474043328702633331977168775903350557929023233359205813047128230741363083482041365845075249319178793999005856778680811779083784522911420519825713738930903604514930432327435755406403484491228343075922083298289929463367612180095879814334515830338256256962304365507,16128185768089596194287119128971616467728481679140585100708821051566471323843047828854183726318833284371487280925375797724567335316422823058316454263458054143106806709907496680547056853651764349462358556329487313360470751830659004515085115085503406434144518308588359624087795942838829972724870214686385899497790143468039433972576851570857473482249444251166188717970319339154993972583107254198134043017660882069243167380269891894037618164535745069845632928065376946760432598515015966819900477155552863106379035709861023910264232532374352692943776001019180723682584987138149276551856921296644229421379331608912433891787,2216711622729147643119351601279604576561222476671706440839914460051282496368367881534683081378746937805707571316950268212663028051018612966825594397873907399847514954700788018713085783872783310865267981225782070802491186153117333152717062661110252994273036185050571252614763467112197381544773361260703440205625252670499456016034457927577251901944688698835868136916669160283880144324751412122403729270589464975875662168775295336481672192780137765587777958466322897160031233145485380452023766308429956773283861365366429753738225270634870302712702783980696520536919562785018253963272279772947237341901826167911636277398,14567981249611770119460797088791616882610277285940857160650608249425344206528691122331543913667869847178068077135905754757970717904714688019328854767805335556395966314263235325078374161755665460346725642944725762703818596015903905714083108502634334495870792846224658572820537006327415243377500340330706127007814008821793048336577227035431648149947100606065474813247441707074217050761365292856644845629066245995828609114930249956124849463230151850823327413055370077318181578457937246716760725440912216906628033172873929155794447444347775998977195569636526530564164070920144286322379557192066768871877841501668738723305,11562467842115790891804601373773643847126621903349499609152938962148770984937205728801191644445725158989276699296504193090664088648177394705510081647868491010141118677836328015755807190340752111789458182176683494843129204876774659319228937425442946958815453444622877125277511242659189800732695804577042735408856749044867603169231506434230337165888447884043777386886336176295745762185799165141571995448994795987563473269027183930075484844146542824749783851152327060411300732221330038342605240436682988238960554043191119742665518743299119772957848539797927531910599793668616983919654530567233469044356313491217598173963,14001988942247671750781482079375285966547579414294794319094213847379686940578167330959958747320137628734714588973465688779508774703004652572462868416321674738451567199004872420641775754108356291951642382728451341563463073268234897512437292991864411475522021623042299363078178084134670414407763213420631947305174457007699331702204294303015464925310244650403343929391594959891748515738314022772251420423895070351394216428634037166244804545860754313566530581379130190514697248618490807663014153146208137639940027271688234812971813570187637013722635079779830294526604514749212529717398437104564243590356265592707324430248,22660381208680529934440965587759859630365737502029115748369924654698991903261875827625444059798716389150600717053198039271991446052177985348107490095372700835812383361394955848974961135498980301472468398590372824927166661721168913896457190085269560320077063240744390945543298734163933076390800852847268723891846915780866370885782050245477056357544654583119258014409021504561016925378839878361190561580782875056594285065583655990468688145199834395357403106937935824760810934700883413929457207664342072543405193505090717688282434192414638239406093224709925453132516053056802277292184257441746331824932943075086343111278,20472030140330590554727016751322746521411547021589348812503605132754052870300345339453032427074737788538570891246727822818774891000538284023878268779231690147875265496447517546051987993131805558030308294615301233476549529141133753715149811029684466002817709334036803452074715441881335148948617848448549417354051160238759910288354822541817903899839091496273435021826344319441409806973908079330351993159801831003550379943098083992503486981995525990398355622285332802868604496636639655839747683821735810491234886789689703654299736502370849656509374303361111199544583501333765966424789805698080099714702838932727164170265,2453173651401016059883376082702788558595819343620938909718003743834761063920578770151771007440124157356829685449240956671627119096461094862434828440771694576875873539491082895345114445338009283914246401641276451109273726841868022516636570181871922631150553766823691471767095455577358060583652290109547591748476465162423200240371828509110384977101559949176482932811774533277255627251591525680337416653414697852938946477765739575989782561041133771451257557157756072849234217247160968445068150218106127891386897699168070200218755068578136094949985380806928006246790329032200529105916916706533850553672076045608730359951,24113152339438360498818613385483602121911555739122745946787379178133957345957135620586264478203421944425299426192146461629084303328006516447630615633641891356240907180660156167532682435848933370915136668244592305335752238307655218128679169067763462102575980085156721937439825798887974559139719995948680828470417607776837167245694714142889348485597791698351034577938495332154328968099025912022930753095015877561713107591709857548795164690012791766454787725487399290632750389338230767552797412606609844617222343058516288469384643892784348204522341997782682670665258025662990169755315957866286658684293611644496873215267,23048127989879822710411192866890144848102725506107457207672066933390327615164057701868652098516421397166175276204189099923035751642625511125320886106285613893278788342927698548384268560900735111168363954600824026890037073968715675372129633119593307084369015870114545021114363768521678984746381386414166722200844864695581741219036038918650136132423598216731404838838590398569938445014697553573715959930243891120229359688175340044395042982004999256741864583061848148945179825358319553305735497035945950407010348447423433336328707080153581767979294379351950056937128181379551873194994067035954630194182060875682649437666,13618893464695086149676203128264379703835247962620883770951238013108147463339903484787069986025297587613907750851693587285998342458273645890621629308654871877706080796956646324471034007240766614380367007821000885398439611969420081154359024999574164769946112634981576459912811818772491470799900760145047753530968995478407930477477944129573287306569838212654312701822189291272987922653156057983889008935259264244527455188704827518079129994488508788103513618119832400499449348458232904888661877972105894911067928574676593878643851258312142433749927142945806711403413926146774157545099025460329680057003565864119710344042,23894029291617241391144328899509691451082120805949912944383938437120322549284785238294999166576087704069349411280857670919349460489513399500828536265895125463653495907166485758411354581066514943080277665731467417672021474933030712874768858153808012182457456133833868682464778542510979705494991241834256525297885337509013426009068419788422403698033836643374538850826433098217327104341285009528115639746062522009884356634868057714134080806096522631119686584895158882950387390079669636785522392222833493980203199840117132536258676406629318977553433626720193118379634005263005358473104730141003648560474105109737111011794,8925336938516965008397109104514048184046286665452569746388287155124102463448431342748346308295582163969585477123381674515410213967775651281608577967919981280923720344420733336038269189964575637162708585549385406099462739524026684819607311522399446887121322482655436562521377082292558533779186792041587188361186852658931953312216304602575717772394803653647861926317392730789837892117863267885605817028617970756887793540591824273228108598874261690153175536884068161483807477696239392976829822163308261960542651335245650622440817598987961098884462409657203750437907285145610244236094931259734945402603438305753971150592,11949666259971918796589430623190075546810486453882961593114781232790528357171489136086300172564872735213582648459678932324553671446193373613445392996846768949427585353892225809922873734606473958012848905522095066153323414491640379067553063059327565094898320425802881846169782611727703042073646692303198048486923691657532734229486488161759607766287874080676488615866925028524263799527274261471472615111756048644281578781133899646868101860588922113737985515123939591333283772116702698675273675787772365936701715064375893211337204849804346824788133348904362412793959284749560448461044309070434592388006426231060171764771,22250566339370324059402215781976249391077086920660167269541657986285216346026428267640441435642495757683689137264020871118649281135403445710476580606390835296225377720486579495200200373576733192798872047011357659910138900430140520045889539388154712432007987497852789128001047310532391671755193946030519165629053752937739899959567496721448943588557458516035029605073085115080892712303741049416122614132971525567297514147438256957998569093867126816514230762539072531021367441808139154778858187018499802649090111006001230394761758788797026721593274233504527845651968558769656875733771044784061166465882679811351871629592],"BigXj":[{"Coords":[107932666477475802631511202367582748861519739569035537904969017494701526323818,27810089900979531039053592509940878404833992140356119628629019981009106058899]},{"Coords":[70488850009775279003934303461546816167586319901288720095232797816893086714940,21365158033407193885213404713050228625397820553043856269267720323259910113340]},{"Coords":[96704419145309517259142970140495022508494287400107594467439362232020961329299,76628584944766298203991062873793502752240767184659143342509677627090500089962]},{"Coords":[28019161860991754547254544009397503028608838172584402384170752184470432984674,108882834276696603625351040619123218095898824500661874818668494090573839581587]},{"Coords":[69854419615803608419512220164651266075688659942948825382651503385261699188382,86209865999364219341605400066204025416938700532196803014526015416182305901566]},{"Coords":[55707469940275855599640808250448173151230633312005616373715718152006593734016,71581471827456608524472614862044126332419275513283203837579704443605501341979]},{"Coords":[31537542564214197931115404850756486671358385103785295421162883744455005249506,31003647934233069190792056145926504346119044635106496026002117518163562078840]},{"Coords":[71459743938853567115182393388387842195822211722537627655935266215390092032802,105621264392663357649957909617094860377111556629887291515711877643951632476111]},{"Coords":[100170179262204638729042299933877814060918019584852761639094198183345507736585,28900877763089774489040863107152228045173480683157331262486804734772631569442]},{"Coords":[3393930126761759176345687233491451168543634500428196687848693751772795262696,55773871461934232294712308387072487465508923595028614508001564000526922809830]},{"Coords":[35436174997161384450863357581481493940397620545951968086180770941965008242533,22941476771782647278770334144010957938195504420883358055133977993491797250976]},{"Coords":[20742591764203230819083960194719627433799141307841650214987882235851644570480,36792680781195360005281832466704518433303594582044389944698351592636972852101]},{"Coords":[78822613167932563650341174247543824338627391764838115664582901884987316485415,29305611808246076472515388603014476455888609363718621630903671994111327870746]},{"Coords":[106662917025753316359017201639970683777210765763056751174154469380644107823988,38376047705320523688829546978146661452201839032747402442602961204420046730181]},{"Coords":[50131378328647772110850225682895027165473791107252577081428683178756073747030,6484525664721285218064077598136507537588284647694850022336064622644441747313]},{"Coords":[63814576207919556970263190432671978386229401573575575774195362165468317841987,52351921007743438678847732376277019290979039258214198300788054101141627584484]},{"Coords":[33074537919982031116943260590723731125144796968052633499149040111855190089892,52462876494517613825042650703891412581466209764861573326649361336309483684004]},{"Coords":[46337244846970653814521818706394664913446423803670640514811670889644615970917,60622380590936530234720907025041106487069869976400399621024354043945489694205]},{"Coords":[68932201886808999446322681662607675293176822755681592496851252047161893154617,102558540543641758967834783938704783088913683989892796677072783324191846467831]},{"Coords":[47093684301174743530406169926797075725911173707597448168332637736184121729220,74517549523358620639964596401882412428175945976473031695393603496712918162101]}],"PaillierPKs":[{"N":22709559588116531632086995360614881758145847958604375585917706994116168375700793376291131544827864145364687259129107134734036373558516565338923959924703156876435469021413354399418993619174071015237246272863140297401272631661028437511282301913323857011886496541494453371682094558243513835287198378640755589750985308457641295136946180231598093936765306071278862423297167033582450972276390473663053961764398615170355333807856718875047329620163477731845253445115727590642190491372191245975524943279344261890117425706855830582201691939059698357650223528988243289388677629074389631868130733940366531485671699566601163615661},{"N":23443957150234287781524191819714980056334495753799141564738532515877512840928595615570444488815473106829833471979932833846134743028112638013245259429585839683894162551870479232892081727695293106142145837752188330564435054323350976552725925455074206192778580457152750035194725712966851385101176362564718763658489874740341398176203077931510475924742361380746164713522692182335455005818339528332609035897638651762193188267900136476551393608916669622907100712471489443414455950510417300576764177277906265582678299980344888299166427651633758323734973558749488731824311505669417847053850760848940423643750519510719400853833},{"N":22287028689259504755807149120904050002396020193634043129060485604472139332057712093383073269246020913354970143960065213561811698182428208504100112877284663913440710058603853492628849020664094889598583038642474751945815658301741607940280803922553940685657785019086609257141579057485855668397778602262577280637009340765489166395694519909332104264865369924039797553524566502151933416185073911748303993059047774791584591703105106437459703251723998725467328206119091524784524659754164199098692948259716816125731645175450298738430174307931086107554346505367596601043514472572775722114263120820933996056766066990263737006037},{"N":21778455942403717802437188616130445569467912356333711523204106321468333958250985526522676150458521139952234508699903096368286173136552336834061186195705878795885628080532376972447127537374960052755412900354192740274699607194495256559382391407619506149746521336051948176770581697936379025338953179299724284866217851767053361169462746892201032000776732741861429352495405542992367041691709412944529198233031428083828538853890568987466209820731450551650370292813109604532198408719181905952928419308306626664706489746484860069309396704199131581338218405332252354539932883923534658047809067343949198229794022084007329008301},{"N":29488834801717020514549557511738862835006604218586783270956635930974777840977382736818004943434492491272083417763033198615963445455042431681833978353867438176815774128330303688651059852719975859250721567522453513175104614385098138081209372251486732213899964978141377939387124226524201851559541320231331748973500724292675746395999336271645347092285737228923411234511145980962423027637945866866145915490526131803713409632083226573065035861386075817821231913413262072294132940186959486615122177174171466978866072639941945123654758187894442697758141328636666389957637295324259708835849664958476600091423260629670847006421},{"N":25268781854018641821625117526035412649921406362359871346957405856614663043063881662682001256500050697385215601589085313282671061645985003913281457834036290368462929918763869754871955608135979298238482437377851913552755913815405018774915484866488142406303297444296659799278477225336231564636195441498040062964451813900346208766721654100661710718867197194733579941984196715209521167970358227552984230489600141394198144474928084583860744656840175887777161454380202188440178263993042579519816969496156562013371732648143667185817225623397113488180419930136011024805515953457443050643425221010148081098971618629282508806153},{"N":24077030535873838147372990238338423111894661719881851208383511932936303788667059523325649062922462968249640702042151293306587810036594125879862518141403476609262478705296844024060273562609291573351215091787555942245982552314643486135981274381916357213038852978171063476276539384812002232533351978097782562939609101707149234139391638125337919614533689982228496010017193463462456934753130533077727108799001253943486336718218272844533405886783727956436625979626270665501149887064412642510585330023269746464208739229956710668053204092869919317416558618819105166451453240320574158658174090376334547079951345889147202424197},{"N":24121210025310295136286367465067731861316363403302816495348899075683542883649267862423504534408270521528934904000166037695519824119622953526124849500602533136680339478221010232315859804261374907195769559713293619918530079931895046819311703445607618111244570268187554380693098539122537784889700313005700764528116670706472264450599583329582635827622249925780628859318211609939169828662135675938640346560681426019582628979275573701346775265344080547061237809761964885298244705276139799178175782218409921284339726928435810584460742981474010807766522632224843035722465220411812727073796692626221078545796203402892726398073},{"N":26956782591324520026471701264974010002551430844929064558517606333109244333104364565707985261498791802440691867651722784210280888161145432103606824079477489895607158911928686613189674072708812330140444741131333062722881890279580684791181148664415766399323289281546841599984936640417820094077391333063403828290767644884268872176714175866593843027335088472731880830448148161449695591865312724115778446298294191846018327598860718546463796845910458753293225328770367785304521228332493000905274903063796918859478998380272311510096333363160486944174426731511854410356169028732110892177884127982236790065871058497952170624401},{"N":26249557760815986852034237905417683014048371748204856284575862917968310785883486514046189771449794410062311941320778404041317694258818896788913080156960590072834802977027251267292982532721343074208805165986815554608059680417209847673748867108719737464989377176319950884300513507127044766841349776517208994115342645229445634306184178062065483947743824551463650982111893910449653832587022792656303977671598375329018430362166017195461057586254287305421091325058340750141735758488815547176349755224428765382123772435956499576803085012124378000542928725389368171404677133866847871236251441021957443853014282022367009685861},{"N":29234737641692976595774236923019314216135921756073342884203680618120226690739166288052322806435356115092650761656136403373733697692050475566331202817414926309882834844059857181882811689758047525443057988160495074334079542319370840285641441603178202467820462588826229922786870937847036888109767951604636584098102615282750014508387427358079100450062680715472456836097388046216848854107984658532128468648705497171277133763535425127577293318939184956565230142817502839346792604559307183239212332206857888330805061669830296766718735240517983609617995793272006065303892130080909658027060291496416496673503247698087863812741},{"N":23656386949781378983561509210223997485938600678969404520355733863050336777307520388106184053630795530040934267843013912848246799628076757878172461266778291537251825140340096706161543161977283845709058224884977213986434571463756330276479208682952096086332163009127424608568458165322976353036562065434426650045708578336603634894217912009997772105108262453019882143577371634194078714264992380438885990335741008955488808069468796086801023973076920357953123958081822096146124559004458043648352764252390085772923647155984579633692639191141425745475545839873632550694666801559519849238477058285069280151324843991596401646381},{"N":23799985430892428550287426639163393896421663100337917557737015159273107046495772196531619480943457572757018895004491581880198797117841320493538657520011738472038586707181276745476787089472101888983238214242261897466709975139313526918983914349699164310009561585851364405464439780111046692215844366708075439030620693316351016954915727063684631173044817825576871464988585229583331260702104268887569088888141481975510438061934915565917441018736997897082388887244599485050548831301667982348795441755679549415459512278548728977097478254566801983960996625453970296380670902503277224729081061542066926552900097298958795919921},{"N":23398981485141581657111580810187356464859260220476400872431878471724619284703169207796437272649895475435460945312990810473873577007856956495840504596329080928974891464665270653430872926713471055976901497303072174459471872022720981442223753911960555794844008812776454183058593769792366230853507105586338576934054995838272457499054915439455088496111012971850904735289245691042597216634196809202787360353382667100073960437339209464655220130141692780283364216457426778903461083049390591667885095066567970867147659207581183606534554025283663685502553767113396678790806758816850832944906936477595076662914396730813902861273},{"N":24645804484208008107774215519843481629641338685651268289287772114412526440944111199969614165736177320304962312701073205538949325003439610780511806547845684862319242490345551374064725883323450769869814834613757570218276860284970150303912936880248283750218053176729988470901025014948637258535944241625099061769802348376561541469733700398108049774899180411488580995483844861534070436865153589414051441506488195269353530135159150725450897767102214976100194473384482425657735122085724544900424323758582364844065404991831422328546732900258700279735848044809564185617079126240413557300335393565946088211107690073344594774029},{"N":23664465666512928010084076006211208070039097235865486451752383277009646489200010451773766854885315852604650109050180997494686499532996982524560956955784208153283884502900612829692080614937231941501430129101050170848135543483642879522140453631883679490750446245717832265221232589489474380464199065201167874127465810334527670252907568617820949350516778153996202871756067806159248004814563340677682071536108582393686279672503548392243690499337315202892692273695083478754736347613219568092769421161385508903701795824994052294039246344316342377047969959511601521901736714883097032290625287691937066549723767146291790114657},{"N":22165609813091667259068375406991183583538522584875908765309739098448534648989953434651686788146626220283972510122914357995219529654582068510398362007031593307847827533082059785375352080923687640731375327188268078188971415753864060723639564145551626769223269559344648109409611860616931934210627553354435590764505138165455042290624193631088250055962033560484870481238850988856340320616852463026890656813658017413542014132396994215496811530247375977104307808133564653689276479112825279061966541271092780066027501498091088819663615972345385914896991989394778860649710938578818683661928070093400675043514978345177529652389},{"N":24352137164919775060505902875895344669551891343219870713119659495462675754712808458066602996522267529841963340495194383402601416044030073771848283771276922546693343786778909195920195728052430645791682092298169597213540403251589258864324656830830912032021695409682689693414793104678019843226941004344886835923010707685858497420014814885662783481710790760565625597934856999445792014460533464855807508832344902590088930105318969772303090927340774137226985715726042801943592444113021856673268564036683304420372700405680896320106848396385562893886698977710031223312091933030330629827691164100994176634674536649129152931477},{"N":24388425323514301995345880181969195093222141730097776998750148283180811486102209130079655780738706237274584643472954914248041737365215477795339570700387683883122567928523036945799350046333477704674538444513982433086664207664876244841911099162128315338715496189423824903190803189243082722638413039421880070666657272413079871744422617706188003161639646693501252928939859937588136677607569634910081471599993513483449765647227570734163189729311880395414909879933139619835138785852476313690881562300854512419432999005203281002911021482679309149225773391703345476483158302622073477221903694296256566718995262186459619480089},{"N":21604728584405813409256303272593334134333518895675489098410576803850613670962405878762275711641486977471395420657043551402890823783906820971712770494973201278527635005537714974340519544361402189093858595896231890523544098157276831993549216761475195055251372273062282101577640320665049775934814411518181030603401788639796770568692007642464803606076672769360069701571162199680486773757848273630254180550410784187377722267755203781450486589090106764541644204842436002216866597611146281471192249537747681020939314396157603364418120170135828923470079746789793341042476885118587449440114091973976013051496269141578521399429}],"ECDSAPub":{"Coords":[82191134404558877049244897640959846424169542769967270904890689024123037541855,102677683688073592669768840687667774566029618427936181452214529135934890152533]}} \ No newline at end of file diff --git a/test/_fixtures/keygen_data_19.json b/test/_fixtures/keygen_data_19.json deleted file mode 100644 index a6124262..00000000 --- a/test/_fixtures/keygen_data_19.json +++ /dev/null @@ -1 +0,0 @@ -{"PaillierSK":{"N":21604728584405813409256303272593334134333518895675489098410576803850613670962405878762275711641486977471395420657043551402890823783906820971712770494973201278527635005537714974340519544361402189093858595896231890523544098157276831993549216761475195055251372273062282101577640320665049775934814411518181030603401788639796770568692007642464803606076672769360069701571162199680486773757848273630254180550410784187377722267755203781450486589090106764541644204842436002216866597611146281471192249537747681020939314396157603364418120170135828923470079746789793341042476885118587449440114091973976013051496269141578521399429,"LambdaN":10802364292202906704628151636296667067166759447837744549205288401925306835481202939381137855820743488735697710328521775701445411891953410485856385247486600639263817502768857487170259772180701094546929297948115945261772049078638415996774608380737597527625686136531141050788820160332524887967407205759090515301553588399599290139207568198773144133875264209714229591993843600486624923439415911803806441096395048804299478373795408310521759225334027774485899770299708913909101704462711992389006288274627034633353145417601027107626646337177087684159298685854761053481420376283336690910720581860362564794094569151661825941942,"PhiN":21604728584405813409256303272593334134333518895675489098410576803850613670962405878762275711641486977471395420657043551402890823783906820971712770494973201278527635005537714974340519544361402189093858595896231890523544098157276831993549216761475195055251372273062282101577640320665049775934814411518181030603107176799198580278415136397546288267750528419428459183987687200973249846878831823607612882192790097608598956747590816621043518450668055548971799540599417827818203408925423984778012576549254069266706290835202054215253292674354175368318597371709522106962840752566673381821441163720725129588189138303323651883884},"NTildei":23827659784682250604442454473547796888740733968924087692522596947210995569582513002946432005898923676155984614087332560259943866897650716815951119740918614656692843602108809220144973266843900928325168304104193270024169252614460073574472494366384192690720704949267653372513388389564250659367518167586555169618994627094576635848093242114762843534765611200879960614166650643590955853799316870443339993391685970472310294098785089036360647811365521892090305001153074254408707786436158648387047030717269669710808288303673434511182840032065481730245714970751088620360458026112893074508503440200554493648329036195258926190733,"H1i":16010347999096675182232092054526583890655342476048555695134478148077646319292254202928857709848426726687922101503995183630866920756294444357812738165670087524526688577215556076807546011943089084967115014780281986236650136100212790809186133722139336439667178800133917927993914606420172087843235000579778849526996068548810587854703520128067422195406060143205277668392537421614569464766336104310955572146529110182880365088792241394086157577886083440548786679580400292545275535505024808973895871707731827445166453079771165377996477241584002682623055073167645192536278061988188027824852844065261608054572024963829903461213,"H2i":22250566339370324059402215781976249391077086920660167269541657986285216346026428267640441435642495757683689137264020871118649281135403445710476580606390835296225377720486579495200200373576733192798872047011357659910138900430140520045889539388154712432007987497852789128001047310532391671755193946030519165629053752937739899959567496721448943588557458516035029605073085115080892712303741049416122614132971525567297514147438256957998569093867126816514230762539072531021367441808139154778858187018499802649090111006001230394761758788797026721593274233504527845651968558769656875733771044784061166465882679811351871629592,"Alpha":14403628913475707711316588800516934482640952910789006451036132575863260171703574745870524881269405995456952393711244188386753687889972998920008513616455253761982952194771361335249125715737691193295154833617877395883082153092699489956002173707906165234379705414803671198693039552265581045890942674484888046107210614165612350315644592994814302539762037423352450136872098575650120110277498329371756962623504480928298194640391831579533011343011407976270290228694754306366725149480089879189678117552480431313638440210702052073926913688531290793833283237097208204943465634720272247505278635156565730693331604578249125471502,"Beta":5281113147716394033208119091761577002575458140839281821398280904402183087417788721414540852124664877665763582428992832188925815939982509651297667743532321433287630925259924211206874363157531410560188991527850223419107251951919703382174165744768112777250829613521468921746056909612696689932086383973209427924937879035160288838517864417565473868832102428829279247552534854453602928015911405065565274825168925824862033651916083458943936782863244976248033520211780542410171344902999620743129032627390009034309369887044570053219682589315660114454013101416343691132530169625011434017189989096530334655136199129028717875440,"P":75855865231507596729040268585398614145139246292350296489075773394603561121550674659708182026364790136244494133525817870827665830244999217503079626071169519493126648520887827136445800873738998859561296138180720537237662642490834245479093550696900621532129486071902799136940885648124151823584052166207374093899,"Q":78529391603278295336055834309670000793977076023159210437300886374347861719202569195694596778850024659117194764001806871823955948439787744253082204360165865256049964188792316094649929935762395003328275828731970885389839341716827227398166354356472636006803307849094358982594610885259698842911219499444947215933,"Xi":72347409255224429441923185241020718660381259131020857893976869455671252101295,"ShareID":70024534756929667616115849317753032895580033020239899587896153938577578972768,"Ks":[70024534756929667616115849317753032895580033020239899587896153938577578972749,70024534756929667616115849317753032895580033020239899587896153938577578972750,70024534756929667616115849317753032895580033020239899587896153938577578972751,70024534756929667616115849317753032895580033020239899587896153938577578972752,70024534756929667616115849317753032895580033020239899587896153938577578972753,70024534756929667616115849317753032895580033020239899587896153938577578972754,70024534756929667616115849317753032895580033020239899587896153938577578972755,70024534756929667616115849317753032895580033020239899587896153938577578972756,70024534756929667616115849317753032895580033020239899587896153938577578972757,70024534756929667616115849317753032895580033020239899587896153938577578972758,70024534756929667616115849317753032895580033020239899587896153938577578972759,70024534756929667616115849317753032895580033020239899587896153938577578972760,70024534756929667616115849317753032895580033020239899587896153938577578972761,70024534756929667616115849317753032895580033020239899587896153938577578972762,70024534756929667616115849317753032895580033020239899587896153938577578972763,70024534756929667616115849317753032895580033020239899587896153938577578972764,70024534756929667616115849317753032895580033020239899587896153938577578972765,70024534756929667616115849317753032895580033020239899587896153938577578972766,70024534756929667616115849317753032895580033020239899587896153938577578972767,70024534756929667616115849317753032895580033020239899587896153938577578972768],"NTildej":[24366917239515824974480442558600034492208859976504581465004349103795399783288421050831073024860369440303795551299953821996018530997630686285237603133194573622718124597460737572013930327249120648302190449742363261573076443183981343509885970573178298207488759436277685910850783372123719807298277837194569211839837465137044422691734879346883675317045008891659749391963717253895556693016508386391015178130161988317310806894350108084212611277788190739249760699147435109968242744158314817905689533615803297627887736048945645075792686416602832677541152918424023805280241226851534199867283487943291927564365275467582581271053,24760645214372673899925400730945520473062951341429554908754617530444794660401836428698520741646966955149111758288194803110363170964340801072472223878272430220722034553855593944561986134993071918255771235073978495918874383067260043443905506152815841034811512510858407909698555608803009379935760654878372301870950275270724586431009354962811874333750886958869738872804882633350285507993032763679234057221556156642769183354423672540429587887851343483914923600996425040023829456198369968692844034517720322057627565080062766276792221145223750390964637842847390939964073972850018793739320669513533403812272268817559996728177,24335507174653830446370401218472354012341984065893977351232759664219171991998539382418393419142907217562914494098827810315198583692551476438232634594991137003295122745831430159532586451010818106345725278793436836406022036374386618877645773128457664942790386603953998246404350465143928182109615440037926218085391564421745517307996722808502413850991173460229650178023548969664557299385141472097112836353938598657235574893430259143862369227601052831476146199261368117297723539373329843815951236997008000605506966102265798289158763516254914284024816124992986001907541315389832578466014006010753144367487203071067653140017,25353120959776139123294155818546513426444543204238814947681743626639583989194265533184090862296087842527526282860965927846515276605818147773016966742984780344247645856238734726222917730082852005118152200740071409410429096265046046476115230269737050878141459099734884888260830179970728221214610731604157017545322535971152193773221758709395769765431078738204491094323008301356895841037132747444047830530409305765562694358003007195242702308043142399969256485870876259711230128209178441443167004632638027691911658424285106297785382963002590496015895572427776988235599297735903480964253948429971597628412447354914215359401,29849885402332341621158797110436829396646924395042456662853244309209629024048299162272105169817115314715561658954210859089958590864101117136365470947498907594068557026997249170993874294161892140147876022164668279854630146959174794473879294364568105935870579392660025720467645329300426773479121856766502569984218591054914763859996476236063750210092775547343099066989888106146219058807079888624162205626100491953381078296178689026680702514982189001052448223393538379392778307314168895065497502603308074595916000270844935723623383768691838356870704054233137068509668072099435779943491520206735659166266930856700483211181,24303346306264095483727907643814355785838936488512300414348142784703917728792656928355740144163123550572150171398192480623395181408570425672723511597546032812698562984141032629389936754449924613948711482870260420456913877526422469201798411517711928654451945040790337077196569240216228957228264615761147375423719114756511538399142649755527243797217920772594702713281103939163745422429156605226253637010451757984598979666631182977221341184990723224510127460146263007980086670575857365789365543477249518437176817144448210584125518855115672157465775432933601089465408090382773104140011964681476656187299047937685144419517,22663176204438991528847068755997123453980704364589354833944958947785385672266299429364336994892902925142195136026995771544990684289261678272550855925683439714148609523477977179010696117909805695701859018966669150739407573082987363056991238107146673103957237104655136409343763639221993038484198677605284199701204669351878989982962102150055730219424526668206392140254467740757469800556697236694088468633665970603098311956910105499246381935436511205439918717236853087415401432056630404175846159692661637004967185601880460514710913037913825633119857629058574151126418040291146967097319384900092639447317903904481362864461,22214406206988221120543596573138808869312423548073528052574227838235500966558488375856182495656208729058219131190228351185002058116343873479198633895772314072671413818939926736318457089940649635331152484030046857163634723835906012553106874988855844579826872824922610248380139635284283310239564378546105159549071234915504686574306652852285495484227675227079507874801353534124836509674143920296971261218965184384289987323806590503991373066703353411925035343072343417173322682200148341574699074894310006001608609036165489022667366737175975429277190015768847957906950063130121905159960720849686267420829596753652148430921,26992054981062895613627607261766199835432715284801801749398907129229048796737348701447929605174559094984645968238323112325575430714478210726667128296579144479334211667227791506349731191531989884599385537951555136889431648507040431760656554949203843341649040209953028348323032563665739842658324687215759862340780391326904566525914822596715715051383829453805370490781186878600411802395931887164480044180689343432959074712196207660797594065685195126347713904229309636698471250350144098081500570797555478540127343168177689831999672573508345263924360426808488416307292793876390765153143370885661040432948994217496537757037,26883601429347938201866566412436359463282736845136879263977010812101340295160083165177085686402734295128738223195845941394861534416081222492334460738589328436684156816061652087254848610272225814333318089300032442695939753398569200283276971829978683842747584203047240258517693679059389343721225356421724973291878661622168915849085533925700422984364421907650824486413330797840743205222070155228532990351439410717713883609930796830287062705670943579996135308824473851899048361474382520461452309816639861239026761274994745411785747289015653392872405877863169928875880404134872170564729075194783267248873823339090853461089,26675898204441883357756938810501612911006923314113656530850642169244358619346060171584915468088311545710004060513299980257359925141562861692364285790755062927815783069742814310907363159744172010043214941961935176791603921250085454102936917126214113873120405883118273636844903335000473865105148550590214462929117780405311499444885924770449779157142014006830224170685309315154438797997384633339817640551850145502452900467824909085498261391267709054450200313476628713250795473832792093350711410373115197160491274663551092524073340836221397352664353235247831158949819050115215290772010284539607969271690219902603821582657,24003425727589170532663869192322030538943945148822062399216337010945961427378027710524236529045097740008239529891693854573603730323074574387306355517555029571396270483790272731994105657673718134894396083438028861748333502807033025075738141563799251049728691667635160338770958887288469952328987442729682278796947289053518986771911122562542149441355230810099948748099507142060010177281487688268845292432759376770532767245812643377347484905682286529844081415426101824234408564247618590677966518836555327692461478356122297916534505785216531638872958168430321684571355170353352724268927780693184938724886624339722183259421,20030939948791694094921106997836532434578994294403521371501479100010836848962747077471607238761388497679145378822499150459403963802326636975589780084279335637070321781313502047027883154267014733038805978970710176410579107929485519779112034850622531520287022547371539439386174878773544830750041302618611105173361798826270784808992652396596786821436733488377837349284332001375201088424331364286550732742247150161681889289004480841207149941594126907534285607712061943572341899739867922754683103581617612214747009636033814762750497302268078808823665919929249386647148964298452596399586628310864464196272071720395192133489,26870132374951553243581913321377246229771795848056596419360924847337540300978229013002723427615100062690126686631934134732102152941473371391783556453709425066357685692036492637888980565254013131275256724381428020710512422112788440607830591932440438849890272166273212125255293837259298348084558313308788645038416611482549103781514142985867750527012906984385110191046837459757808864741583473057341019452578423080700589131792924736182910584032669431737863108910781465411300404077532371983623221078943741087750842713540302692591604785862604978245628364756611702919842339423052849035969584933072813435912401288087398604921,25781309885353513172762417920559862373653633766198016154431702305819993747433843312735651525316421555779956949217599915608247344211910767561492880228357017663462131839160610108626231391786518524635537763772771732022138542377442385539024671393136972077400774477946909998449518641822004119697621239956294809097040644518494643152713366295240127317300380586618659118989790014789381034410565903140125870883802621234783419468923863900036725871332435066935174631607488613764393382263135690909855298574769132391272005233712859895795189174927584736869111985784832037628893972777670733794612566699959726190117505644366934694141,31307948529511772422092081620376528723351660195178245630091738647550584183808045529448767036136429258045017880313805169530174754560039519751935200016137594525166410173049351154227454247975670642857061354284229524586536451868860885813714578893448403685065908393856455188372709054731049692863370865677701391460552630927498629863324809550335559817235997586126538332699529118621351625401581293898546298753212618743290610874832103267345624474884402930254336353399762494911879332332316505133643206864735435683656288655072941785814640312959405902536938955107787448304325831133755028455554235924936888965889253927315459519249,31466961232199038206393986199348595708256863299176374148227521484010795684260339468184532260347996789772040097386032241172658309499404470468218492541809815234208995118730337303514831281668817831605535229415260143432704661750281094187807328676322407373913844432440683972812394664524853699586055958635280164067281091412249301309251915772998531080870705450343112678791059297982033179252277552572737658097615320288170699408198262523087724946180097295208523307748556241283633289461565623961341136472687878275672606572269060361808996126027608464429012339688636176786148346418213288770613540923635302757146988963110333316781,23282315206683722596094270562333648753439051790898100314922005841725502497093211800334393760989042727597691714582193235713639238284172358062468387217727181092939568556559834956352385929118617242221861532950969685568622107078283773942779583910577282365015752267710687089071780861330758005577221151609134583129504364837341221471368611555190375227501319216183854908348755278500330379812379883892909358375120467449644585220805660246421673078936109889143381498767668445860590513918867961598096050612727306953235332046855083649560662539716078578551485777683734466740521988744140757231408246451261769915726695959921765032997,25091337650425677853684475917739333556784369056148930585749057080859640921803414967035499248336819782755466354804640016025044002503128223804670636762370700960312352761126598625504662989187540799606658080278007629478214427447535566556662347722562243890754037326739900472696108231869156013516647618154210840364364919089100138905499001603568088340085110153219085814807927945152975657929969505495173887189020701090313994816079981109190512102678874334588894915787220152560380696231794377692004958328931143825599595181025003997691503128188855105160353707735893011124272774335559316106266020514461879401833904958202494061001,23827659784682250604442454473547796888740733968924087692522596947210995569582513002946432005898923676155984614087332560259943866897650716815951119740918614656692843602108809220144973266843900928325168304104193270024169252614460073574472494366384192690720704949267653372513388389564250659367518167586555169618994627094576635848093242114762843534765611200879960614166650643590955853799316870443339993391685970472310294098785089036360647811365521892090305001153074254408707786436158648387047030717269669710808288303673434511182840032065481730245714970751088620360458026112893074508503440200554493648329036195258926190733],"H1j":[10024025457847388392610646066298514243370787348338532750631360639913721829629888261433439914402718667116400994500512300775136069581637894623537510481269716297031115527602912311323880048384727148486222115704187210174101029381357780998875764924841198846224052749406474209451141960414618133437662859572202780961023516801781475926753784006105642819239485607653090319392184244933555747381471676665633830261574288841173438644814600240117247473386184548108338325639763390271130259071021112922069642676901166841167199223435257080313456925802886649375691201308332777566495693037805296244451983094124223174758130752134991251259,5540062908155010932513159905564312164946355979316528931149460136278288806659772940588319017326328094974853633874382463976169195549392127817304835111543615409573476314059060881338397061412436243810139473181382772109210271463439624149555390649740374635589527762045108740275882849527695527198385706268316952416235237543464363519203592980469637771074904708426157233888490918907104014536294284692202685017252106362206847500376336741712522098586355602155374318553270307953934712780754034315941245597336144803859821983984428471938659224631751193248483706020880124594451403191977963618445462632103562894369717754678411970157,7294264017980791887588541945948527964732046841763268733085682296431903566128312881527716171471646888128877802321111011007465120561544014131687975703500639986893207003039277321438260744935109724584373350656877837682253991859961109267518971621013884413991023503512551591742311046398421527897782104779903020623974791981836764750802585775470044046719785755322826006147242995196401054126149520747563133877218253475355114168420889541015916952420416242677374123641966631897855997275959219115766326404348502491490713975699304986526310844436386187304302850704361098476666746013218735172029033252239873173053183420490728457969,9501218113444747046512167891740890620022448184208745016727575118910400114702536042272711158066289559244823855716406559728787015762712355980741317225927051706399078523944764818407725281098361563758658548109686452917704268397282493394145905917631338144130662786869889947744035847462163212831976185178442327943506290185820473986106267053867388409405767987475830498385924106417897644176202343305711004215516685101951487059182051580662118563531777396290757514364141633090265347173402382594862836539162320425532069699769291364183133350523773491418365804493761877536170212947415911627316964969637971056063543234131063060179,15798786414829945409990379475347092437191933825852017565866427461531342919124334651290935627606571949258216191049074056902849155877229528326934734579833314251986756112086465450838437292200045064209850028597082873902388658379469441564667669701765841537160309665720024332706155566138689213961078587239980763899119769146527020365437175547591597253422987241897416697834718145603044863506510817025716990741255205962477142190641478116356939618991137525950385435749637759382858607750867147376236491183474725313362128439752969796168290272602393139910089130691220986679844969299810559606706770072567820176650336982258175656069,9335293725151276608993402038690349490322365392613976918346481216796454921531989892317554215286413208524498017721329770260220214739976276463115767516661469141467987234112799014449837377419827917305931640946522287484467505347102693011074644574833321939291182991369361351550845549986196632347752029739003400876962371840702829213086378506709453044627207644282674209652698873675164479665879605315024759424379670463637654094152277916485019222649587458037242630015801094579916767996040360006216068355347853880839844214694922100092515535187976540400673364286904799817798092386690711558542096052961324458158162316849747049802,11928753658530568234030789407795275088740952723187227006977773559909074576164921817701724786519460916583196165018163510774039491890001017299531322520325627826211812869166690445989428530376091680807701566180854522056382923625327483414081231404244458202347765643506681512770879868073522880161513490523543914681148241833246281106290736532685240004675518845019764469048182810211653160870255293592651339935498048137995182398802459841631852186888112285076188858851763824315081771524248572039785549974159773606819792419731561145595921289694471859455550756883293661073453125644271107011011223441502328961618975292599286540534,3281434421303304451534752490245528887879239197847942017450979313729063086003376295872507109217827492860554007309921835555072782997029442232019030164252143769859146809734506916627953872016140383116721175515392391691229687480990552997729334078523811275423771755788388400181281035140972235710503768780977567025805917901565574387698038208089499892809008311004708551092635216129712077377038639345772519472468677180077197280667928734700336917165150723117546746441573171713790905181182966896063824517476166929486302044010896828146903022644169171194514314475627079949830761751962833520028060036397259454122764395181619471620,26798335028033483015595995885818313899416775173626251303214746152969095667991567148306665607431284548931904800914249634868412622200397325111043206330920355980127737464934048444736064518743501106031852408038680600709174828761299003903687195970226223339349891916494477088540593890862438659139800883091968208023580402075789145180476758769233643214633776274238005081673345069570155874633220460290011162900873068065044353387042255376321331197145839355270876626896209116281706932058419419985043694684968787877580180579063249938562059688827441196772120556845945709093021801017783532024267437712559776698525435075445312453530,24379152218258906482492311550879222904032299657142525355457269472724266562417862087603238266608926068245433152992105088073531452805187189356790567435332219230651301413762858849116755355885877930185483851669316692179467165059725168458003778120562044911094551614016767541895327106348965256725682881898632251239010971342586248735804355885933092854432575702106523584026168029150861398417670162335859972289331761535391135324650197244391340985538289280848512779115086784546807731473605687728417756436783747883720385660475468617431753857425268742613699673867257484976547014884809737803594445736805689004998882232608324939099,13639308363088689304499602606006748747737150113207488794697369879342136632158898637529348398215211110838650184450613858330095458701807309615170814350482223259077017423473614957663630359321153124867291328161758174033028972972743424022771180662104664036306205285576270109455984955077713540350117086087967860191108122028954920957836754439818988959156002918996099715859267715547983808966864149367592758343569651869960032231333418638792990340363087590766121964019626938526976202582697949104351928836667810574924696014475214582129919944765647849262874087078594478919124600690586319504349329877883243753775251538124197406468,20806324398112704184576243642308446225385834167758222047710915865491553221121456559290405385050181445190026351137186843498701962906728774890279265822922302262674344261443633266351787522423584433088856438680222017039801221837510594012303704942258177163584539612102842678739854493210477613035711103258550560273478479277362352841578985334600196007452719273341052878795457240578018430753780869150598290734861026318283861569123861098217259089119729724503263571923384603566241538064572968952230647186501970761685868678332574820155746476145383468962025352911125509572618602029024652380792594855032573631797517407433780124767,2984534567830588608251691688517562019886934976940239944296177755224193834812017598586976214786265618202828155437088641819872658344085523203617440122990791586663797768559098311449463943487720199704106941788760276946864277974792415345700942642550277726023952217616537482804161899962996481893200668973584167349538844293867619144628567178172496162265433563681342772983054368775009029385174850706677287569940753312983986212778939947598815595002848721076684937312652495527309505744053588382568512842786184034878250903582357463020880854201625144449160004603244837252628379531756302498757122746553391615927560808029960266625,19681285575282653686371866964026575635551812532880664611876190222601081859688141586553347439412758942096084877111883472375168961225184324383968489352875717670106440217006572540605411871630725641391171380023993395232691314662393923848318294382993540810449491616527524662991307157899373490742858664974644838212306475173795164847929404327886006104677091872987173592834296913553225843321065615965897920646645086083927169011172363123935140462214285019059726271437492418936191962060610764641005376370506280067258828239222704103600176916708092576268163001234852617058752894380793333304339677721072271552272594404600260363861,17663259858420311330651766819499911841067663794994694318257191199872170158137865025958007148817857781638492835306514771303332749042829120815317355608633338052028835394702531720709875380635913577846095483312528431723891955957026638053673584169905737554185634030129649039016018518994356839547241764882921390944931575304729587593422442361903863687010228628846862342208853396044641495867576785861723973159597871732538239253298128840563941065388954934551651787261972744712209405583851147359110032083949020208533161960188954813739180009449972293158373021060141688387818302891372350131649013502869609299334048318236045598871,5298970575809274629438935393989318057761764519542767586120836445032263316761487525811021815951911099884013107458570792999455520743412617129043815044943875968069243444902286481323598638834526377417104328855033745156522241109248831526582827196555064828920153555458318257230359794631019067306886747836486535385255549193636393132450664433886493509087281083390290568729201571601929480774638279112348846248022706481056446460853658284203145411150560753280109970030570227674159359532427547564201906120131477615407933400264643596572008335881981150704968737407428485573362254058660832170694074403410494545950595818012264895776,15913403370317249903846545253264583237445426368566054050873204733344285093615027647693061965382356514660489490017289737470216855339451599323161686141225364898734459213317143215419647354792387760477998230133600223913390244574171627679693591136928514907378143973333998319592583595882555481681002615976566590485876365765518571760268938260544608828017208378436062792581980653043467844284389159435925884731521336805223809049222649874552372676573497110509098941429212961378401761184902390250234585999298135037647853709390803265128558710383431672409386841314821848625953345836234945114508861921890833145094378447829164485787,2290909140884019351426250008814545735225813230804981825833168241438120125584365814035371010990772186759925886882837107545743421629040643022748869446583860483172598682089887676740059939878553272595424436357723367398096377972698494175572434136161599049698027302739164581483237687791238697379241703838109655701932792883820617202754352159209515775921392841098109717647668579384288444138762640166641466203925793570935398566304261495839675905915184706531257340555764797653386663178215604213661066377035729358506114543600757612373813217341582075351741934166661911856401287953329256496263459473595206461438549716253839581620,16642615813361835581230500131246118445590603247887791817817316273244438476256311337001611675388574331977410141699297630317377151836311293305027088331310025109780248001730816502531361314291505497281231329646213545390817348454790771602982974763540004526670479533111992035177312072478629306988622806347623090425003234077873805375141062348645927401285345899503907001825760439541705306585854742931882134500925066002906885338189163552908934604616236359806104007315451823167682352183241953279551520079950202231330492255621315016646701261669501844925563045252616708085163536257987840050252877140816998011230187115088535718084,16010347999096675182232092054526583890655342476048555695134478148077646319292254202928857709848426726687922101503995183630866920756294444357812738165670087524526688577215556076807546011943089084967115014780281986236650136100212790809186133722139336439667178800133917927993914606420172087843235000579778849526996068548810587854703520128067422195406060143205277668392537421614569464766336104310955572146529110182880365088792241394086157577886083440548786679580400292545275535505024808973895871707731827445166453079771165377996477241584002682623055073167645192536278061988188027824852844065261608054572024963829903461213],"H2j":[3368171208877966911054339907901878144315427177489764716664525147952589494997571345476952466465636584372230416806643927079294770772639785886747559841089671070120102511739419185926825275343129268693107584218806327021288882477748577914215697371729166784288283440868236399459954587383445757960644874348547417850473459042890356424271874499317095341286743556259239705095932387025485711185437452734962326711790258196775033662070121656155183933539103178989257156247756946175745703344908852193344259286268186560067884170926994359970521939453852919421341990972981960061011629945378288288327928173529860414633963687461741921536,21571995110918784658914871089233085747498481392093921476006031602493786671249981878215451382962183306832489322303548281716296137774931836883062638257871799588636736223841397596603236825079859053119441636830060533162035824030490541191082185733831191460351456499274515867869223195196735738841516139421749973183291711819985317821732516820314960505801684638233368245136026792456696584282458766742520555425925807015416047178765452538113430822668214923191463369535833443605844329620997852520039896259519774630621573507729397714725431894641714478634392952187074508209560077240054333035743202911738795412331854359778973195140,14361846248841354239738429614485615020817620015740214377557182447187161532145777460980697522328331383902906916852306307688790083451608130261350491455026208295552005757157547049806867066926847972162187184750531821995727255016828133897770613409484181886065535775699953909464798003780913388918153183011660224430464726560354626850573087079518001579497098985920611294338802921392907919446517107741456227975646401634963060678572780580998274987217038988195161229432595476488751730989311796958677066257365863948226172977171594831544011639884849989931328654207271418544321580100757601201270000125579606365984683036050427736901,3320303882237934822574723730249906877625782534310160672723504685750059065549780868692191634937564489497907122877469551544554741543440051593275714064385262048169355745443620314041833050794531307335253819559894664711581948933864857312882072901440293913927021712377972600011615454373450050526995352982830050256391443830850515525775497974669346917338799122924286263331475349263163070978610950486766234107397409979634217974050928014066919223534136219934067215088896161064759214148618049130963680983012705398939807692207987093138939884157043400363128971664499276483693036909962979142844998423058170845192989653278227244556,11392712315645310673556256100365181042182208368042016535682634838624439633464280578340353342992697843456486856323709208993769929825667198124843256857854149171724638555790573818365215224736100981973384410995558183533272266822358013891089919574254939818330873527463833155579817319890250882056946018928950519405481352273564274138745239339555689528027209630484474043328702633331977168775903350557929023233359205813047128230741363083482041365845075249319178793999005856778680811779083784522911420519825713738930903604514930432327435755406403484491228343075922083298289929463367612180095879814334515830338256256962304365507,16128185768089596194287119128971616467728481679140585100708821051566471323843047828854183726318833284371487280925375797724567335316422823058316454263458054143106806709907496680547056853651764349462358556329487313360470751830659004515085115085503406434144518308588359624087795942838829972724870214686385899497790143468039433972576851570857473482249444251166188717970319339154993972583107254198134043017660882069243167380269891894037618164535745069845632928065376946760432598515015966819900477155552863106379035709861023910264232532374352692943776001019180723682584987138149276551856921296644229421379331608912433891787,2216711622729147643119351601279604576561222476671706440839914460051282496368367881534683081378746937805707571316950268212663028051018612966825594397873907399847514954700788018713085783872783310865267981225782070802491186153117333152717062661110252994273036185050571252614763467112197381544773361260703440205625252670499456016034457927577251901944688698835868136916669160283880144324751412122403729270589464975875662168775295336481672192780137765587777958466322897160031233145485380452023766308429956773283861365366429753738225270634870302712702783980696520536919562785018253963272279772947237341901826167911636277398,14567981249611770119460797088791616882610277285940857160650608249425344206528691122331543913667869847178068077135905754757970717904714688019328854767805335556395966314263235325078374161755665460346725642944725762703818596015903905714083108502634334495870792846224658572820537006327415243377500340330706127007814008821793048336577227035431648149947100606065474813247441707074217050761365292856644845629066245995828609114930249956124849463230151850823327413055370077318181578457937246716760725440912216906628033172873929155794447444347775998977195569636526530564164070920144286322379557192066768871877841501668738723305,11562467842115790891804601373773643847126621903349499609152938962148770984937205728801191644445725158989276699296504193090664088648177394705510081647868491010141118677836328015755807190340752111789458182176683494843129204876774659319228937425442946958815453444622877125277511242659189800732695804577042735408856749044867603169231506434230337165888447884043777386886336176295745762185799165141571995448994795987563473269027183930075484844146542824749783851152327060411300732221330038342605240436682988238960554043191119742665518743299119772957848539797927531910599793668616983919654530567233469044356313491217598173963,14001988942247671750781482079375285966547579414294794319094213847379686940578167330959958747320137628734714588973465688779508774703004652572462868416321674738451567199004872420641775754108356291951642382728451341563463073268234897512437292991864411475522021623042299363078178084134670414407763213420631947305174457007699331702204294303015464925310244650403343929391594959891748515738314022772251420423895070351394216428634037166244804545860754313566530581379130190514697248618490807663014153146208137639940027271688234812971813570187637013722635079779830294526604514749212529717398437104564243590356265592707324430248,22660381208680529934440965587759859630365737502029115748369924654698991903261875827625444059798716389150600717053198039271991446052177985348107490095372700835812383361394955848974961135498980301472468398590372824927166661721168913896457190085269560320077063240744390945543298734163933076390800852847268723891846915780866370885782050245477056357544654583119258014409021504561016925378839878361190561580782875056594285065583655990468688145199834395357403106937935824760810934700883413929457207664342072543405193505090717688282434192414638239406093224709925453132516053056802277292184257441746331824932943075086343111278,20472030140330590554727016751322746521411547021589348812503605132754052870300345339453032427074737788538570891246727822818774891000538284023878268779231690147875265496447517546051987993131805558030308294615301233476549529141133753715149811029684466002817709334036803452074715441881335148948617848448549417354051160238759910288354822541817903899839091496273435021826344319441409806973908079330351993159801831003550379943098083992503486981995525990398355622285332802868604496636639655839747683821735810491234886789689703654299736502370849656509374303361111199544583501333765966424789805698080099714702838932727164170265,2453173651401016059883376082702788558595819343620938909718003743834761063920578770151771007440124157356829685449240956671627119096461094862434828440771694576875873539491082895345114445338009283914246401641276451109273726841868022516636570181871922631150553766823691471767095455577358060583652290109547591748476465162423200240371828509110384977101559949176482932811774533277255627251591525680337416653414697852938946477765739575989782561041133771451257557157756072849234217247160968445068150218106127891386897699168070200218755068578136094949985380806928006246790329032200529105916916706533850553672076045608730359951,24113152339438360498818613385483602121911555739122745946787379178133957345957135620586264478203421944425299426192146461629084303328006516447630615633641891356240907180660156167532682435848933370915136668244592305335752238307655218128679169067763462102575980085156721937439825798887974559139719995948680828470417607776837167245694714142889348485597791698351034577938495332154328968099025912022930753095015877561713107591709857548795164690012791766454787725487399290632750389338230767552797412606609844617222343058516288469384643892784348204522341997782682670665258025662990169755315957866286658684293611644496873215267,23048127989879822710411192866890144848102725506107457207672066933390327615164057701868652098516421397166175276204189099923035751642625511125320886106285613893278788342927698548384268560900735111168363954600824026890037073968715675372129633119593307084369015870114545021114363768521678984746381386414166722200844864695581741219036038918650136132423598216731404838838590398569938445014697553573715959930243891120229359688175340044395042982004999256741864583061848148945179825358319553305735497035945950407010348447423433336328707080153581767979294379351950056937128181379551873194994067035954630194182060875682649437666,13618893464695086149676203128264379703835247962620883770951238013108147463339903484787069986025297587613907750851693587285998342458273645890621629308654871877706080796956646324471034007240766614380367007821000885398439611969420081154359024999574164769946112634981576459912811818772491470799900760145047753530968995478407930477477944129573287306569838212654312701822189291272987922653156057983889008935259264244527455188704827518079129994488508788103513618119832400499449348458232904888661877972105894911067928574676593878643851258312142433749927142945806711403413926146774157545099025460329680057003565864119710344042,23894029291617241391144328899509691451082120805949912944383938437120322549284785238294999166576087704069349411280857670919349460489513399500828536265895125463653495907166485758411354581066514943080277665731467417672021474933030712874768858153808012182457456133833868682464778542510979705494991241834256525297885337509013426009068419788422403698033836643374538850826433098217327104341285009528115639746062522009884356634868057714134080806096522631119686584895158882950387390079669636785522392222833493980203199840117132536258676406629318977553433626720193118379634005263005358473104730141003648560474105109737111011794,8925336938516965008397109104514048184046286665452569746388287155124102463448431342748346308295582163969585477123381674515410213967775651281608577967919981280923720344420733336038269189964575637162708585549385406099462739524026684819607311522399446887121322482655436562521377082292558533779186792041587188361186852658931953312216304602575717772394803653647861926317392730789837892117863267885605817028617970756887793540591824273228108598874261690153175536884068161483807477696239392976829822163308261960542651335245650622440817598987961098884462409657203750437907285145610244236094931259734945402603438305753971150592,11949666259971918796589430623190075546810486453882961593114781232790528357171489136086300172564872735213582648459678932324553671446193373613445392996846768949427585353892225809922873734606473958012848905522095066153323414491640379067553063059327565094898320425802881846169782611727703042073646692303198048486923691657532734229486488161759607766287874080676488615866925028524263799527274261471472615111756048644281578781133899646868101860588922113737985515123939591333283772116702698675273675787772365936701715064375893211337204849804346824788133348904362412793959284749560448461044309070434592388006426231060171764771,22250566339370324059402215781976249391077086920660167269541657986285216346026428267640441435642495757683689137264020871118649281135403445710476580606390835296225377720486579495200200373576733192798872047011357659910138900430140520045889539388154712432007987497852789128001047310532391671755193946030519165629053752937739899959567496721448943588557458516035029605073085115080892712303741049416122614132971525567297514147438256957998569093867126816514230762539072531021367441808139154778858187018499802649090111006001230394761758788797026721593274233504527845651968558769656875733771044784061166465882679811351871629592],"BigXj":[{"Coords":[107932666477475802631511202367582748861519739569035537904969017494701526323818,27810089900979531039053592509940878404833992140356119628629019981009106058899]},{"Coords":[70488850009775279003934303461546816167586319901288720095232797816893086714940,21365158033407193885213404713050228625397820553043856269267720323259910113340]},{"Coords":[96704419145309517259142970140495022508494287400107594467439362232020961329299,76628584944766298203991062873793502752240767184659143342509677627090500089962]},{"Coords":[28019161860991754547254544009397503028608838172584402384170752184470432984674,108882834276696603625351040619123218095898824500661874818668494090573839581587]},{"Coords":[69854419615803608419512220164651266075688659942948825382651503385261699188382,86209865999364219341605400066204025416938700532196803014526015416182305901566]},{"Coords":[55707469940275855599640808250448173151230633312005616373715718152006593734016,71581471827456608524472614862044126332419275513283203837579704443605501341979]},{"Coords":[31537542564214197931115404850756486671358385103785295421162883744455005249506,31003647934233069190792056145926504346119044635106496026002117518163562078840]},{"Coords":[71459743938853567115182393388387842195822211722537627655935266215390092032802,105621264392663357649957909617094860377111556629887291515711877643951632476111]},{"Coords":[100170179262204638729042299933877814060918019584852761639094198183345507736585,28900877763089774489040863107152228045173480683157331262486804734772631569442]},{"Coords":[3393930126761759176345687233491451168543634500428196687848693751772795262696,55773871461934232294712308387072487465508923595028614508001564000526922809830]},{"Coords":[35436174997161384450863357581481493940397620545951968086180770941965008242533,22941476771782647278770334144010957938195504420883358055133977993491797250976]},{"Coords":[20742591764203230819083960194719627433799141307841650214987882235851644570480,36792680781195360005281832466704518433303594582044389944698351592636972852101]},{"Coords":[78822613167932563650341174247543824338627391764838115664582901884987316485415,29305611808246076472515388603014476455888609363718621630903671994111327870746]},{"Coords":[106662917025753316359017201639970683777210765763056751174154469380644107823988,38376047705320523688829546978146661452201839032747402442602961204420046730181]},{"Coords":[50131378328647772110850225682895027165473791107252577081428683178756073747030,6484525664721285218064077598136507537588284647694850022336064622644441747313]},{"Coords":[63814576207919556970263190432671978386229401573575575774195362165468317841987,52351921007743438678847732376277019290979039258214198300788054101141627584484]},{"Coords":[33074537919982031116943260590723731125144796968052633499149040111855190089892,52462876494517613825042650703891412581466209764861573326649361336309483684004]},{"Coords":[46337244846970653814521818706394664913446423803670640514811670889644615970917,60622380590936530234720907025041106487069869976400399621024354043945489694205]},{"Coords":[68932201886808999446322681662607675293176822755681592496851252047161893154617,102558540543641758967834783938704783088913683989892796677072783324191846467831]},{"Coords":[47093684301174743530406169926797075725911173707597448168332637736184121729220,74517549523358620639964596401882412428175945976473031695393603496712918162101]}],"PaillierPKs":[{"N":22709559588116531632086995360614881758145847958604375585917706994116168375700793376291131544827864145364687259129107134734036373558516565338923959924703156876435469021413354399418993619174071015237246272863140297401272631661028437511282301913323857011886496541494453371682094558243513835287198378640755589750985308457641295136946180231598093936765306071278862423297167033582450972276390473663053961764398615170355333807856718875047329620163477731845253445115727590642190491372191245975524943279344261890117425706855830582201691939059698357650223528988243289388677629074389631868130733940366531485671699566601163615661},{"N":23443957150234287781524191819714980056334495753799141564738532515877512840928595615570444488815473106829833471979932833846134743028112638013245259429585839683894162551870479232892081727695293106142145837752188330564435054323350976552725925455074206192778580457152750035194725712966851385101176362564718763658489874740341398176203077931510475924742361380746164713522692182335455005818339528332609035897638651762193188267900136476551393608916669622907100712471489443414455950510417300576764177277906265582678299980344888299166427651633758323734973558749488731824311505669417847053850760848940423643750519510719400853833},{"N":22287028689259504755807149120904050002396020193634043129060485604472139332057712093383073269246020913354970143960065213561811698182428208504100112877284663913440710058603853492628849020664094889598583038642474751945815658301741607940280803922553940685657785019086609257141579057485855668397778602262577280637009340765489166395694519909332104264865369924039797553524566502151933416185073911748303993059047774791584591703105106437459703251723998725467328206119091524784524659754164199098692948259716816125731645175450298738430174307931086107554346505367596601043514472572775722114263120820933996056766066990263737006037},{"N":21778455942403717802437188616130445569467912356333711523204106321468333958250985526522676150458521139952234508699903096368286173136552336834061186195705878795885628080532376972447127537374960052755412900354192740274699607194495256559382391407619506149746521336051948176770581697936379025338953179299724284866217851767053361169462746892201032000776732741861429352495405542992367041691709412944529198233031428083828538853890568987466209820731450551650370292813109604532198408719181905952928419308306626664706489746484860069309396704199131581338218405332252354539932883923534658047809067343949198229794022084007329008301},{"N":29488834801717020514549557511738862835006604218586783270956635930974777840977382736818004943434492491272083417763033198615963445455042431681833978353867438176815774128330303688651059852719975859250721567522453513175104614385098138081209372251486732213899964978141377939387124226524201851559541320231331748973500724292675746395999336271645347092285737228923411234511145980962423027637945866866145915490526131803713409632083226573065035861386075817821231913413262072294132940186959486615122177174171466978866072639941945123654758187894442697758141328636666389957637295324259708835849664958476600091423260629670847006421},{"N":25268781854018641821625117526035412649921406362359871346957405856614663043063881662682001256500050697385215601589085313282671061645985003913281457834036290368462929918763869754871955608135979298238482437377851913552755913815405018774915484866488142406303297444296659799278477225336231564636195441498040062964451813900346208766721654100661710718867197194733579941984196715209521167970358227552984230489600141394198144474928084583860744656840175887777161454380202188440178263993042579519816969496156562013371732648143667185817225623397113488180419930136011024805515953457443050643425221010148081098971618629282508806153},{"N":24077030535873838147372990238338423111894661719881851208383511932936303788667059523325649062922462968249640702042151293306587810036594125879862518141403476609262478705296844024060273562609291573351215091787555942245982552314643486135981274381916357213038852978171063476276539384812002232533351978097782562939609101707149234139391638125337919614533689982228496010017193463462456934753130533077727108799001253943486336718218272844533405886783727956436625979626270665501149887064412642510585330023269746464208739229956710668053204092869919317416558618819105166451453240320574158658174090376334547079951345889147202424197},{"N":24121210025310295136286367465067731861316363403302816495348899075683542883649267862423504534408270521528934904000166037695519824119622953526124849500602533136680339478221010232315859804261374907195769559713293619918530079931895046819311703445607618111244570268187554380693098539122537784889700313005700764528116670706472264450599583329582635827622249925780628859318211609939169828662135675938640346560681426019582628979275573701346775265344080547061237809761964885298244705276139799178175782218409921284339726928435810584460742981474010807766522632224843035722465220411812727073796692626221078545796203402892726398073},{"N":26956782591324520026471701264974010002551430844929064558517606333109244333104364565707985261498791802440691867651722784210280888161145432103606824079477489895607158911928686613189674072708812330140444741131333062722881890279580684791181148664415766399323289281546841599984936640417820094077391333063403828290767644884268872176714175866593843027335088472731880830448148161449695591865312724115778446298294191846018327598860718546463796845910458753293225328770367785304521228332493000905274903063796918859478998380272311510096333363160486944174426731511854410356169028732110892177884127982236790065871058497952170624401},{"N":26249557760815986852034237905417683014048371748204856284575862917968310785883486514046189771449794410062311941320778404041317694258818896788913080156960590072834802977027251267292982532721343074208805165986815554608059680417209847673748867108719737464989377176319950884300513507127044766841349776517208994115342645229445634306184178062065483947743824551463650982111893910449653832587022792656303977671598375329018430362166017195461057586254287305421091325058340750141735758488815547176349755224428765382123772435956499576803085012124378000542928725389368171404677133866847871236251441021957443853014282022367009685861},{"N":29234737641692976595774236923019314216135921756073342884203680618120226690739166288052322806435356115092650761656136403373733697692050475566331202817414926309882834844059857181882811689758047525443057988160495074334079542319370840285641441603178202467820462588826229922786870937847036888109767951604636584098102615282750014508387427358079100450062680715472456836097388046216848854107984658532128468648705497171277133763535425127577293318939184956565230142817502839346792604559307183239212332206857888330805061669830296766718735240517983609617995793272006065303892130080909658027060291496416496673503247698087863812741},{"N":23656386949781378983561509210223997485938600678969404520355733863050336777307520388106184053630795530040934267843013912848246799628076757878172461266778291537251825140340096706161543161977283845709058224884977213986434571463756330276479208682952096086332163009127424608568458165322976353036562065434426650045708578336603634894217912009997772105108262453019882143577371634194078714264992380438885990335741008955488808069468796086801023973076920357953123958081822096146124559004458043648352764252390085772923647155984579633692639191141425745475545839873632550694666801559519849238477058285069280151324843991596401646381},{"N":23799985430892428550287426639163393896421663100337917557737015159273107046495772196531619480943457572757018895004491581880198797117841320493538657520011738472038586707181276745476787089472101888983238214242261897466709975139313526918983914349699164310009561585851364405464439780111046692215844366708075439030620693316351016954915727063684631173044817825576871464988585229583331260702104268887569088888141481975510438061934915565917441018736997897082388887244599485050548831301667982348795441755679549415459512278548728977097478254566801983960996625453970296380670902503277224729081061542066926552900097298958795919921},{"N":23398981485141581657111580810187356464859260220476400872431878471724619284703169207796437272649895475435460945312990810473873577007856956495840504596329080928974891464665270653430872926713471055976901497303072174459471872022720981442223753911960555794844008812776454183058593769792366230853507105586338576934054995838272457499054915439455088496111012971850904735289245691042597216634196809202787360353382667100073960437339209464655220130141692780283364216457426778903461083049390591667885095066567970867147659207581183606534554025283663685502553767113396678790806758816850832944906936477595076662914396730813902861273},{"N":24645804484208008107774215519843481629641338685651268289287772114412526440944111199969614165736177320304962312701073205538949325003439610780511806547845684862319242490345551374064725883323450769869814834613757570218276860284970150303912936880248283750218053176729988470901025014948637258535944241625099061769802348376561541469733700398108049774899180411488580995483844861534070436865153589414051441506488195269353530135159150725450897767102214976100194473384482425657735122085724544900424323758582364844065404991831422328546732900258700279735848044809564185617079126240413557300335393565946088211107690073344594774029},{"N":23664465666512928010084076006211208070039097235865486451752383277009646489200010451773766854885315852604650109050180997494686499532996982524560956955784208153283884502900612829692080614937231941501430129101050170848135543483642879522140453631883679490750446245717832265221232589489474380464199065201167874127465810334527670252907568617820949350516778153996202871756067806159248004814563340677682071536108582393686279672503548392243690499337315202892692273695083478754736347613219568092769421161385508903701795824994052294039246344316342377047969959511601521901736714883097032290625287691937066549723767146291790114657},{"N":22165609813091667259068375406991183583538522584875908765309739098448534648989953434651686788146626220283972510122914357995219529654582068510398362007031593307847827533082059785375352080923687640731375327188268078188971415753864060723639564145551626769223269559344648109409611860616931934210627553354435590764505138165455042290624193631088250055962033560484870481238850988856340320616852463026890656813658017413542014132396994215496811530247375977104307808133564653689276479112825279061966541271092780066027501498091088819663615972345385914896991989394778860649710938578818683661928070093400675043514978345177529652389},{"N":24352137164919775060505902875895344669551891343219870713119659495462675754712808458066602996522267529841963340495194383402601416044030073771848283771276922546693343786778909195920195728052430645791682092298169597213540403251589258864324656830830912032021695409682689693414793104678019843226941004344886835923010707685858497420014814885662783481710790760565625597934856999445792014460533464855807508832344902590088930105318969772303090927340774137226985715726042801943592444113021856673268564036683304420372700405680896320106848396385562893886698977710031223312091933030330629827691164100994176634674536649129152931477},{"N":24388425323514301995345880181969195093222141730097776998750148283180811486102209130079655780738706237274584643472954914248041737365215477795339570700387683883122567928523036945799350046333477704674538444513982433086664207664876244841911099162128315338715496189423824903190803189243082722638413039421880070666657272413079871744422617706188003161639646693501252928939859937588136677607569634910081471599993513483449765647227570734163189729311880395414909879933139619835138785852476313690881562300854512419432999005203281002911021482679309149225773391703345476483158302622073477221903694296256566718995262186459619480089},{"N":21604728584405813409256303272593334134333518895675489098410576803850613670962405878762275711641486977471395420657043551402890823783906820971712770494973201278527635005537714974340519544361402189093858595896231890523544098157276831993549216761475195055251372273062282101577640320665049775934814411518181030603401788639796770568692007642464803606076672769360069701571162199680486773757848273630254180550410784187377722267755203781450486589090106764541644204842436002216866597611146281471192249537747681020939314396157603364418120170135828923470079746789793341042476885118587449440114091973976013051496269141578521399429}],"ECDSAPub":{"Coords":[82191134404558877049244897640959846424169542769967270904890689024123037541855,102677683688073592669768840687667774566029618427936181452214529135934890152533]}} \ No newline at end of file diff --git a/test/_fixtures/keygen_data_2.json b/test/_fixtures/keygen_data_2.json deleted file mode 100644 index 73081c41..00000000 --- a/test/_fixtures/keygen_data_2.json +++ /dev/null @@ -1 +0,0 @@ -{"PaillierSK":{"N":22287028689259504755807149120904050002396020193634043129060485604472139332057712093383073269246020913354970143960065213561811698182428208504100112877284663913440710058603853492628849020664094889598583038642474751945815658301741607940280803922553940685657785019086609257141579057485855668397778602262577280637009340765489166395694519909332104264865369924039797553524566502151933416185073911748303993059047774791584591703105106437459703251723998725467328206119091524784524659754164199098692948259716816125731645175450298738430174307931086107554346505367596601043514472572775722114263120820933996056766066990263737006037,"LambdaN":11143514344629752377903574560452025001198010096817021564530242802236069666028856046691536634623010456677485071980032606780905849091214104252050056438642331956720355029301926746314424510332047444799291519321237375972907829150870803970140401961276970342828892509543304628570789528742927834198889301131288640318355126290375265871876738834166639150394346703225012407575650075320653174478959941013871403407190349194524911384828627662194413696666021101984574045489031060333300931682827637228459382682165389666829707767750788795182160420551722815840073367257338126146437822991457141335427102076489212558386653542153903856198,"PhiN":22287028689259504755807149120904050002396020193634043129060485604472139332057712093383073269246020913354970143960065213561811698182428208504100112877284663913440710058603853492628849020664094889598583038642474751945815658301741607940280803922553940685657785019086609257141579057485855668397778602262577280636710252580750531743753477668333278300788693406450024815151300150641306348957919882027742806814380698389049822769657255324388827393332042203969148090978062120666601863365655274456918765364330779333659415535501577590364320841103445631680146734514676252292875645982914282670854204152978425116773307084307807712396},"NTildei":24335507174653830446370401218472354012341984065893977351232759664219171991998539382418393419142907217562914494098827810315198583692551476438232634594991137003295122745831430159532586451010818106345725278793436836406022036374386618877645773128457664942790386603953998246404350465143928182109615440037926218085391564421745517307996722808502413850991173460229650178023548969664557299385141472097112836353938598657235574893430259143862369227601052831476146199261368117297723539373329843815951236997008000605506966102265798289158763516254914284024816124992986001907541315389832578466014006010753144367487203071067653140017,"H1i":7294264017980791887588541945948527964732046841763268733085682296431903566128312881527716171471646888128877802321111011007465120561544014131687975703500639986893207003039277321438260744935109724584373350656877837682253991859961109267518971621013884413991023503512551591742311046398421527897782104779903020623974791981836764750802585775470044046719785755322826006147242995196401054126149520747563133877218253475355114168420889541015916952420416242677374123641966631897855997275959219115766326404348502491490713975699304986526310844436386187304302850704361098476666746013218735172029033252239873173053183420490728457969,"H2i":14361846248841354239738429614485615020817620015740214377557182447187161532145777460980697522328331383902906916852306307688790083451608130261350491455026208295552005757157547049806867066926847972162187184750531821995727255016828133897770613409484181886065535775699953909464798003780913388918153183011660224430464726560354626850573087079518001579497098985920611294338802921392907919446517107741456227975646401634963060678572780580998274987217038988195161229432595476488751730989311796958677066257365863948226172977171594831544011639884849989931328654207271418544321580100757601201270000125579606365984683036050427736901,"Alpha":3082181489949170600897256057046217465167776747476691169984885303048878201267336983679482102241541272715842770125654383384755075728367056427175897881590954824026000250336138824139957838695898766103169174105462663900458038466316171047087624425615062756473921544953076235865352441583074048813160787107480647626640432752857608511622146581357008007622700739553909177173501626909021988121100336683959559290881832291576774829897502017940622713087904443776820433658103834683580915120995785250622681407323146707835768715769813794207804140007727098640150801253306070212313331203085754046690672458021771925653513637431259049753,"Beta":2494947662692391717318300819721250694410431373985431564315467070068672195785143684020634005509405413290882738208409028070323871548164291972000163490903525287810284161983491658511388447053369590468115666991551763594644087255414115078361196663532047715924840795602858508435577230291221692333488061058241647869501935931114894740005642290670496916555625269175926693070240842097284463968737440083879145174877404696327811903395359623136238238448895190061606918166578114484176036145315233504010041308586031202137278497497607212304660871663917675196192440106493132753811842873216930983792467712934827238968665758058816636918,"P":74358242753674506113320654727093593668895788422736762764275698482608216887086550078750294565646923872790593061939522870496978043212577129983788982923795367517504036691177415275440366169657864863113450029849116450731680245301017354636458474090682801400092339225966390760262173559671395757164128067677200851389,"Q":81818458429920537436441576374457475643599261626766174979235502296562120147794735527299278402759122099025974530662582086223608509867927388668379071008602814320532697477106120767378526542420192213391098681328725831896680596529268938286973022391059768808331046873963404159560762192904533401487657806527764012961,"Xi":53709293990792933841620948832658798601314044122333679167423707620295264611200,"ShareID":70024534756929667616115849317753032895580033020239899587896153938577578972751,"Ks":[70024534756929667616115849317753032895580033020239899587896153938577578972749,70024534756929667616115849317753032895580033020239899587896153938577578972750,70024534756929667616115849317753032895580033020239899587896153938577578972751,70024534756929667616115849317753032895580033020239899587896153938577578972752,70024534756929667616115849317753032895580033020239899587896153938577578972753,70024534756929667616115849317753032895580033020239899587896153938577578972754,70024534756929667616115849317753032895580033020239899587896153938577578972755,70024534756929667616115849317753032895580033020239899587896153938577578972756,70024534756929667616115849317753032895580033020239899587896153938577578972757,70024534756929667616115849317753032895580033020239899587896153938577578972758,70024534756929667616115849317753032895580033020239899587896153938577578972759,70024534756929667616115849317753032895580033020239899587896153938577578972760,70024534756929667616115849317753032895580033020239899587896153938577578972761,70024534756929667616115849317753032895580033020239899587896153938577578972762,70024534756929667616115849317753032895580033020239899587896153938577578972763,70024534756929667616115849317753032895580033020239899587896153938577578972764,70024534756929667616115849317753032895580033020239899587896153938577578972765,70024534756929667616115849317753032895580033020239899587896153938577578972766,70024534756929667616115849317753032895580033020239899587896153938577578972767,70024534756929667616115849317753032895580033020239899587896153938577578972768],"NTildej":[24366917239515824974480442558600034492208859976504581465004349103795399783288421050831073024860369440303795551299953821996018530997630686285237603133194573622718124597460737572013930327249120648302190449742363261573076443183981343509885970573178298207488759436277685910850783372123719807298277837194569211839837465137044422691734879346883675317045008891659749391963717253895556693016508386391015178130161988317310806894350108084212611277788190739249760699147435109968242744158314817905689533615803297627887736048945645075792686416602832677541152918424023805280241226851534199867283487943291927564365275467582581271053,24760645214372673899925400730945520473062951341429554908754617530444794660401836428698520741646966955149111758288194803110363170964340801072472223878272430220722034553855593944561986134993071918255771235073978495918874383067260043443905506152815841034811512510858407909698555608803009379935760654878372301870950275270724586431009354962811874333750886958869738872804882633350285507993032763679234057221556156642769183354423672540429587887851343483914923600996425040023829456198369968692844034517720322057627565080062766276792221145223750390964637842847390939964073972850018793739320669513533403812272268817559996728177,24335507174653830446370401218472354012341984065893977351232759664219171991998539382418393419142907217562914494098827810315198583692551476438232634594991137003295122745831430159532586451010818106345725278793436836406022036374386618877645773128457664942790386603953998246404350465143928182109615440037926218085391564421745517307996722808502413850991173460229650178023548969664557299385141472097112836353938598657235574893430259143862369227601052831476146199261368117297723539373329843815951236997008000605506966102265798289158763516254914284024816124992986001907541315389832578466014006010753144367487203071067653140017,25353120959776139123294155818546513426444543204238814947681743626639583989194265533184090862296087842527526282860965927846515276605818147773016966742984780344247645856238734726222917730082852005118152200740071409410429096265046046476115230269737050878141459099734884888260830179970728221214610731604157017545322535971152193773221758709395769765431078738204491094323008301356895841037132747444047830530409305765562694358003007195242702308043142399969256485870876259711230128209178441443167004632638027691911658424285106297785382963002590496015895572427776988235599297735903480964253948429971597628412447354914215359401,29849885402332341621158797110436829396646924395042456662853244309209629024048299162272105169817115314715561658954210859089958590864101117136365470947498907594068557026997249170993874294161892140147876022164668279854630146959174794473879294364568105935870579392660025720467645329300426773479121856766502569984218591054914763859996476236063750210092775547343099066989888106146219058807079888624162205626100491953381078296178689026680702514982189001052448223393538379392778307314168895065497502603308074595916000270844935723623383768691838356870704054233137068509668072099435779943491520206735659166266930856700483211181,24303346306264095483727907643814355785838936488512300414348142784703917728792656928355740144163123550572150171398192480623395181408570425672723511597546032812698562984141032629389936754449924613948711482870260420456913877526422469201798411517711928654451945040790337077196569240216228957228264615761147375423719114756511538399142649755527243797217920772594702713281103939163745422429156605226253637010451757984598979666631182977221341184990723224510127460146263007980086670575857365789365543477249518437176817144448210584125518855115672157465775432933601089465408090382773104140011964681476656187299047937685144419517,22663176204438991528847068755997123453980704364589354833944958947785385672266299429364336994892902925142195136026995771544990684289261678272550855925683439714148609523477977179010696117909805695701859018966669150739407573082987363056991238107146673103957237104655136409343763639221993038484198677605284199701204669351878989982962102150055730219424526668206392140254467740757469800556697236694088468633665970603098311956910105499246381935436511205439918717236853087415401432056630404175846159692661637004967185601880460514710913037913825633119857629058574151126418040291146967097319384900092639447317903904481362864461,22214406206988221120543596573138808869312423548073528052574227838235500966558488375856182495656208729058219131190228351185002058116343873479198633895772314072671413818939926736318457089940649635331152484030046857163634723835906012553106874988855844579826872824922610248380139635284283310239564378546105159549071234915504686574306652852285495484227675227079507874801353534124836509674143920296971261218965184384289987323806590503991373066703353411925035343072343417173322682200148341574699074894310006001608609036165489022667366737175975429277190015768847957906950063130121905159960720849686267420829596753652148430921,26992054981062895613627607261766199835432715284801801749398907129229048796737348701447929605174559094984645968238323112325575430714478210726667128296579144479334211667227791506349731191531989884599385537951555136889431648507040431760656554949203843341649040209953028348323032563665739842658324687215759862340780391326904566525914822596715715051383829453805370490781186878600411802395931887164480044180689343432959074712196207660797594065685195126347713904229309636698471250350144098081500570797555478540127343168177689831999672573508345263924360426808488416307292793876390765153143370885661040432948994217496537757037,26883601429347938201866566412436359463282736845136879263977010812101340295160083165177085686402734295128738223195845941394861534416081222492334460738589328436684156816061652087254848610272225814333318089300032442695939753398569200283276971829978683842747584203047240258517693679059389343721225356421724973291878661622168915849085533925700422984364421907650824486413330797840743205222070155228532990351439410717713883609930796830287062705670943579996135308824473851899048361474382520461452309816639861239026761274994745411785747289015653392872405877863169928875880404134872170564729075194783267248873823339090853461089,26675898204441883357756938810501612911006923314113656530850642169244358619346060171584915468088311545710004060513299980257359925141562861692364285790755062927815783069742814310907363159744172010043214941961935176791603921250085454102936917126214113873120405883118273636844903335000473865105148550590214462929117780405311499444885924770449779157142014006830224170685309315154438797997384633339817640551850145502452900467824909085498261391267709054450200313476628713250795473832792093350711410373115197160491274663551092524073340836221397352664353235247831158949819050115215290772010284539607969271690219902603821582657,24003425727589170532663869192322030538943945148822062399216337010945961427378027710524236529045097740008239529891693854573603730323074574387306355517555029571396270483790272731994105657673718134894396083438028861748333502807033025075738141563799251049728691667635160338770958887288469952328987442729682278796947289053518986771911122562542149441355230810099948748099507142060010177281487688268845292432759376770532767245812643377347484905682286529844081415426101824234408564247618590677966518836555327692461478356122297916534505785216531638872958168430321684571355170353352724268927780693184938724886624339722183259421,20030939948791694094921106997836532434578994294403521371501479100010836848962747077471607238761388497679145378822499150459403963802326636975589780084279335637070321781313502047027883154267014733038805978970710176410579107929485519779112034850622531520287022547371539439386174878773544830750041302618611105173361798826270784808992652396596786821436733488377837349284332001375201088424331364286550732742247150161681889289004480841207149941594126907534285607712061943572341899739867922754683103581617612214747009636033814762750497302268078808823665919929249386647148964298452596399586628310864464196272071720395192133489,26870132374951553243581913321377246229771795848056596419360924847337540300978229013002723427615100062690126686631934134732102152941473371391783556453709425066357685692036492637888980565254013131275256724381428020710512422112788440607830591932440438849890272166273212125255293837259298348084558313308788645038416611482549103781514142985867750527012906984385110191046837459757808864741583473057341019452578423080700589131792924736182910584032669431737863108910781465411300404077532371983623221078943741087750842713540302692591604785862604978245628364756611702919842339423052849035969584933072813435912401288087398604921,25781309885353513172762417920559862373653633766198016154431702305819993747433843312735651525316421555779956949217599915608247344211910767561492880228357017663462131839160610108626231391786518524635537763772771732022138542377442385539024671393136972077400774477946909998449518641822004119697621239956294809097040644518494643152713366295240127317300380586618659118989790014789381034410565903140125870883802621234783419468923863900036725871332435066935174631607488613764393382263135690909855298574769132391272005233712859895795189174927584736869111985784832037628893972777670733794612566699959726190117505644366934694141,31307948529511772422092081620376528723351660195178245630091738647550584183808045529448767036136429258045017880313805169530174754560039519751935200016137594525166410173049351154227454247975670642857061354284229524586536451868860885813714578893448403685065908393856455188372709054731049692863370865677701391460552630927498629863324809550335559817235997586126538332699529118621351625401581293898546298753212618743290610874832103267345624474884402930254336353399762494911879332332316505133643206864735435683656288655072941785814640312959405902536938955107787448304325831133755028455554235924936888965889253927315459519249,31466961232199038206393986199348595708256863299176374148227521484010795684260339468184532260347996789772040097386032241172658309499404470468218492541809815234208995118730337303514831281668817831605535229415260143432704661750281094187807328676322407373913844432440683972812394664524853699586055958635280164067281091412249301309251915772998531080870705450343112678791059297982033179252277552572737658097615320288170699408198262523087724946180097295208523307748556241283633289461565623961341136472687878275672606572269060361808996126027608464429012339688636176786148346418213288770613540923635302757146988963110333316781,23282315206683722596094270562333648753439051790898100314922005841725502497093211800334393760989042727597691714582193235713639238284172358062468387217727181092939568556559834956352385929118617242221861532950969685568622107078283773942779583910577282365015752267710687089071780861330758005577221151609134583129504364837341221471368611555190375227501319216183854908348755278500330379812379883892909358375120467449644585220805660246421673078936109889143381498767668445860590513918867961598096050612727306953235332046855083649560662539716078578551485777683734466740521988744140757231408246451261769915726695959921765032997,25091337650425677853684475917739333556784369056148930585749057080859640921803414967035499248336819782755466354804640016025044002503128223804670636762370700960312352761126598625504662989187540799606658080278007629478214427447535566556662347722562243890754037326739900472696108231869156013516647618154210840364364919089100138905499001603568088340085110153219085814807927945152975657929969505495173887189020701090313994816079981109190512102678874334588894915787220152560380696231794377692004958328931143825599595181025003997691503128188855105160353707735893011124272774335559316106266020514461879401833904958202494061001,23827659784682250604442454473547796888740733968924087692522596947210995569582513002946432005898923676155984614087332560259943866897650716815951119740918614656692843602108809220144973266843900928325168304104193270024169252614460073574472494366384192690720704949267653372513388389564250659367518167586555169618994627094576635848093242114762843534765611200879960614166650643590955853799316870443339993391685970472310294098785089036360647811365521892090305001153074254408707786436158648387047030717269669710808288303673434511182840032065481730245714970751088620360458026112893074508503440200554493648329036195258926190733],"H1j":[10024025457847388392610646066298514243370787348338532750631360639913721829629888261433439914402718667116400994500512300775136069581637894623537510481269716297031115527602912311323880048384727148486222115704187210174101029381357780998875764924841198846224052749406474209451141960414618133437662859572202780961023516801781475926753784006105642819239485607653090319392184244933555747381471676665633830261574288841173438644814600240117247473386184548108338325639763390271130259071021112922069642676901166841167199223435257080313456925802886649375691201308332777566495693037805296244451983094124223174758130752134991251259,5540062908155010932513159905564312164946355979316528931149460136278288806659772940588319017326328094974853633874382463976169195549392127817304835111543615409573476314059060881338397061412436243810139473181382772109210271463439624149555390649740374635589527762045108740275882849527695527198385706268316952416235237543464363519203592980469637771074904708426157233888490918907104014536294284692202685017252106362206847500376336741712522098586355602155374318553270307953934712780754034315941245597336144803859821983984428471938659224631751193248483706020880124594451403191977963618445462632103562894369717754678411970157,7294264017980791887588541945948527964732046841763268733085682296431903566128312881527716171471646888128877802321111011007465120561544014131687975703500639986893207003039277321438260744935109724584373350656877837682253991859961109267518971621013884413991023503512551591742311046398421527897782104779903020623974791981836764750802585775470044046719785755322826006147242995196401054126149520747563133877218253475355114168420889541015916952420416242677374123641966631897855997275959219115766326404348502491490713975699304986526310844436386187304302850704361098476666746013218735172029033252239873173053183420490728457969,9501218113444747046512167891740890620022448184208745016727575118910400114702536042272711158066289559244823855716406559728787015762712355980741317225927051706399078523944764818407725281098361563758658548109686452917704268397282493394145905917631338144130662786869889947744035847462163212831976185178442327943506290185820473986106267053867388409405767987475830498385924106417897644176202343305711004215516685101951487059182051580662118563531777396290757514364141633090265347173402382594862836539162320425532069699769291364183133350523773491418365804493761877536170212947415911627316964969637971056063543234131063060179,15798786414829945409990379475347092437191933825852017565866427461531342919124334651290935627606571949258216191049074056902849155877229528326934734579833314251986756112086465450838437292200045064209850028597082873902388658379469441564667669701765841537160309665720024332706155566138689213961078587239980763899119769146527020365437175547591597253422987241897416697834718145603044863506510817025716990741255205962477142190641478116356939618991137525950385435749637759382858607750867147376236491183474725313362128439752969796168290272602393139910089130691220986679844969299810559606706770072567820176650336982258175656069,9335293725151276608993402038690349490322365392613976918346481216796454921531989892317554215286413208524498017721329770260220214739976276463115767516661469141467987234112799014449837377419827917305931640946522287484467505347102693011074644574833321939291182991369361351550845549986196632347752029739003400876962371840702829213086378506709453044627207644282674209652698873675164479665879605315024759424379670463637654094152277916485019222649587458037242630015801094579916767996040360006216068355347853880839844214694922100092515535187976540400673364286904799817798092386690711558542096052961324458158162316849747049802,11928753658530568234030789407795275088740952723187227006977773559909074576164921817701724786519460916583196165018163510774039491890001017299531322520325627826211812869166690445989428530376091680807701566180854522056382923625327483414081231404244458202347765643506681512770879868073522880161513490523543914681148241833246281106290736532685240004675518845019764469048182810211653160870255293592651339935498048137995182398802459841631852186888112285076188858851763824315081771524248572039785549974159773606819792419731561145595921289694471859455550756883293661073453125644271107011011223441502328961618975292599286540534,3281434421303304451534752490245528887879239197847942017450979313729063086003376295872507109217827492860554007309921835555072782997029442232019030164252143769859146809734506916627953872016140383116721175515392391691229687480990552997729334078523811275423771755788388400181281035140972235710503768780977567025805917901565574387698038208089499892809008311004708551092635216129712077377038639345772519472468677180077197280667928734700336917165150723117546746441573171713790905181182966896063824517476166929486302044010896828146903022644169171194514314475627079949830761751962833520028060036397259454122764395181619471620,26798335028033483015595995885818313899416775173626251303214746152969095667991567148306665607431284548931904800914249634868412622200397325111043206330920355980127737464934048444736064518743501106031852408038680600709174828761299003903687195970226223339349891916494477088540593890862438659139800883091968208023580402075789145180476758769233643214633776274238005081673345069570155874633220460290011162900873068065044353387042255376321331197145839355270876626896209116281706932058419419985043694684968787877580180579063249938562059688827441196772120556845945709093021801017783532024267437712559776698525435075445312453530,24379152218258906482492311550879222904032299657142525355457269472724266562417862087603238266608926068245433152992105088073531452805187189356790567435332219230651301413762858849116755355885877930185483851669316692179467165059725168458003778120562044911094551614016767541895327106348965256725682881898632251239010971342586248735804355885933092854432575702106523584026168029150861398417670162335859972289331761535391135324650197244391340985538289280848512779115086784546807731473605687728417756436783747883720385660475468617431753857425268742613699673867257484976547014884809737803594445736805689004998882232608324939099,13639308363088689304499602606006748747737150113207488794697369879342136632158898637529348398215211110838650184450613858330095458701807309615170814350482223259077017423473614957663630359321153124867291328161758174033028972972743424022771180662104664036306205285576270109455984955077713540350117086087967860191108122028954920957836754439818988959156002918996099715859267715547983808966864149367592758343569651869960032231333418638792990340363087590766121964019626938526976202582697949104351928836667810574924696014475214582129919944765647849262874087078594478919124600690586319504349329877883243753775251538124197406468,20806324398112704184576243642308446225385834167758222047710915865491553221121456559290405385050181445190026351137186843498701962906728774890279265822922302262674344261443633266351787522423584433088856438680222017039801221837510594012303704942258177163584539612102842678739854493210477613035711103258550560273478479277362352841578985334600196007452719273341052878795457240578018430753780869150598290734861026318283861569123861098217259089119729724503263571923384603566241538064572968952230647186501970761685868678332574820155746476145383468962025352911125509572618602029024652380792594855032573631797517407433780124767,2984534567830588608251691688517562019886934976940239944296177755224193834812017598586976214786265618202828155437088641819872658344085523203617440122990791586663797768559098311449463943487720199704106941788760276946864277974792415345700942642550277726023952217616537482804161899962996481893200668973584167349538844293867619144628567178172496162265433563681342772983054368775009029385174850706677287569940753312983986212778939947598815595002848721076684937312652495527309505744053588382568512842786184034878250903582357463020880854201625144449160004603244837252628379531756302498757122746553391615927560808029960266625,19681285575282653686371866964026575635551812532880664611876190222601081859688141586553347439412758942096084877111883472375168961225184324383968489352875717670106440217006572540605411871630725641391171380023993395232691314662393923848318294382993540810449491616527524662991307157899373490742858664974644838212306475173795164847929404327886006104677091872987173592834296913553225843321065615965897920646645086083927169011172363123935140462214285019059726271437492418936191962060610764641005376370506280067258828239222704103600176916708092576268163001234852617058752894380793333304339677721072271552272594404600260363861,17663259858420311330651766819499911841067663794994694318257191199872170158137865025958007148817857781638492835306514771303332749042829120815317355608633338052028835394702531720709875380635913577846095483312528431723891955957026638053673584169905737554185634030129649039016018518994356839547241764882921390944931575304729587593422442361903863687010228628846862342208853396044641495867576785861723973159597871732538239253298128840563941065388954934551651787261972744712209405583851147359110032083949020208533161960188954813739180009449972293158373021060141688387818302891372350131649013502869609299334048318236045598871,5298970575809274629438935393989318057761764519542767586120836445032263316761487525811021815951911099884013107458570792999455520743412617129043815044943875968069243444902286481323598638834526377417104328855033745156522241109248831526582827196555064828920153555458318257230359794631019067306886747836486535385255549193636393132450664433886493509087281083390290568729201571601929480774638279112348846248022706481056446460853658284203145411150560753280109970030570227674159359532427547564201906120131477615407933400264643596572008335881981150704968737407428485573362254058660832170694074403410494545950595818012264895776,15913403370317249903846545253264583237445426368566054050873204733344285093615027647693061965382356514660489490017289737470216855339451599323161686141225364898734459213317143215419647354792387760477998230133600223913390244574171627679693591136928514907378143973333998319592583595882555481681002615976566590485876365765518571760268938260544608828017208378436062792581980653043467844284389159435925884731521336805223809049222649874552372676573497110509098941429212961378401761184902390250234585999298135037647853709390803265128558710383431672409386841314821848625953345836234945114508861921890833145094378447829164485787,2290909140884019351426250008814545735225813230804981825833168241438120125584365814035371010990772186759925886882837107545743421629040643022748869446583860483172598682089887676740059939878553272595424436357723367398096377972698494175572434136161599049698027302739164581483237687791238697379241703838109655701932792883820617202754352159209515775921392841098109717647668579384288444138762640166641466203925793570935398566304261495839675905915184706531257340555764797653386663178215604213661066377035729358506114543600757612373813217341582075351741934166661911856401287953329256496263459473595206461438549716253839581620,16642615813361835581230500131246118445590603247887791817817316273244438476256311337001611675388574331977410141699297630317377151836311293305027088331310025109780248001730816502531361314291505497281231329646213545390817348454790771602982974763540004526670479533111992035177312072478629306988622806347623090425003234077873805375141062348645927401285345899503907001825760439541705306585854742931882134500925066002906885338189163552908934604616236359806104007315451823167682352183241953279551520079950202231330492255621315016646701261669501844925563045252616708085163536257987840050252877140816998011230187115088535718084,16010347999096675182232092054526583890655342476048555695134478148077646319292254202928857709848426726687922101503995183630866920756294444357812738165670087524526688577215556076807546011943089084967115014780281986236650136100212790809186133722139336439667178800133917927993914606420172087843235000579778849526996068548810587854703520128067422195406060143205277668392537421614569464766336104310955572146529110182880365088792241394086157577886083440548786679580400292545275535505024808973895871707731827445166453079771165377996477241584002682623055073167645192536278061988188027824852844065261608054572024963829903461213],"H2j":[3368171208877966911054339907901878144315427177489764716664525147952589494997571345476952466465636584372230416806643927079294770772639785886747559841089671070120102511739419185926825275343129268693107584218806327021288882477748577914215697371729166784288283440868236399459954587383445757960644874348547417850473459042890356424271874499317095341286743556259239705095932387025485711185437452734962326711790258196775033662070121656155183933539103178989257156247756946175745703344908852193344259286268186560067884170926994359970521939453852919421341990972981960061011629945378288288327928173529860414633963687461741921536,21571995110918784658914871089233085747498481392093921476006031602493786671249981878215451382962183306832489322303548281716296137774931836883062638257871799588636736223841397596603236825079859053119441636830060533162035824030490541191082185733831191460351456499274515867869223195196735738841516139421749973183291711819985317821732516820314960505801684638233368245136026792456696584282458766742520555425925807015416047178765452538113430822668214923191463369535833443605844329620997852520039896259519774630621573507729397714725431894641714478634392952187074508209560077240054333035743202911738795412331854359778973195140,14361846248841354239738429614485615020817620015740214377557182447187161532145777460980697522328331383902906916852306307688790083451608130261350491455026208295552005757157547049806867066926847972162187184750531821995727255016828133897770613409484181886065535775699953909464798003780913388918153183011660224430464726560354626850573087079518001579497098985920611294338802921392907919446517107741456227975646401634963060678572780580998274987217038988195161229432595476488751730989311796958677066257365863948226172977171594831544011639884849989931328654207271418544321580100757601201270000125579606365984683036050427736901,3320303882237934822574723730249906877625782534310160672723504685750059065549780868692191634937564489497907122877469551544554741543440051593275714064385262048169355745443620314041833050794531307335253819559894664711581948933864857312882072901440293913927021712377972600011615454373450050526995352982830050256391443830850515525775497974669346917338799122924286263331475349263163070978610950486766234107397409979634217974050928014066919223534136219934067215088896161064759214148618049130963680983012705398939807692207987093138939884157043400363128971664499276483693036909962979142844998423058170845192989653278227244556,11392712315645310673556256100365181042182208368042016535682634838624439633464280578340353342992697843456486856323709208993769929825667198124843256857854149171724638555790573818365215224736100981973384410995558183533272266822358013891089919574254939818330873527463833155579817319890250882056946018928950519405481352273564274138745239339555689528027209630484474043328702633331977168775903350557929023233359205813047128230741363083482041365845075249319178793999005856778680811779083784522911420519825713738930903604514930432327435755406403484491228343075922083298289929463367612180095879814334515830338256256962304365507,16128185768089596194287119128971616467728481679140585100708821051566471323843047828854183726318833284371487280925375797724567335316422823058316454263458054143106806709907496680547056853651764349462358556329487313360470751830659004515085115085503406434144518308588359624087795942838829972724870214686385899497790143468039433972576851570857473482249444251166188717970319339154993972583107254198134043017660882069243167380269891894037618164535745069845632928065376946760432598515015966819900477155552863106379035709861023910264232532374352692943776001019180723682584987138149276551856921296644229421379331608912433891787,2216711622729147643119351601279604576561222476671706440839914460051282496368367881534683081378746937805707571316950268212663028051018612966825594397873907399847514954700788018713085783872783310865267981225782070802491186153117333152717062661110252994273036185050571252614763467112197381544773361260703440205625252670499456016034457927577251901944688698835868136916669160283880144324751412122403729270589464975875662168775295336481672192780137765587777958466322897160031233145485380452023766308429956773283861365366429753738225270634870302712702783980696520536919562785018253963272279772947237341901826167911636277398,14567981249611770119460797088791616882610277285940857160650608249425344206528691122331543913667869847178068077135905754757970717904714688019328854767805335556395966314263235325078374161755665460346725642944725762703818596015903905714083108502634334495870792846224658572820537006327415243377500340330706127007814008821793048336577227035431648149947100606065474813247441707074217050761365292856644845629066245995828609114930249956124849463230151850823327413055370077318181578457937246716760725440912216906628033172873929155794447444347775998977195569636526530564164070920144286322379557192066768871877841501668738723305,11562467842115790891804601373773643847126621903349499609152938962148770984937205728801191644445725158989276699296504193090664088648177394705510081647868491010141118677836328015755807190340752111789458182176683494843129204876774659319228937425442946958815453444622877125277511242659189800732695804577042735408856749044867603169231506434230337165888447884043777386886336176295745762185799165141571995448994795987563473269027183930075484844146542824749783851152327060411300732221330038342605240436682988238960554043191119742665518743299119772957848539797927531910599793668616983919654530567233469044356313491217598173963,14001988942247671750781482079375285966547579414294794319094213847379686940578167330959958747320137628734714588973465688779508774703004652572462868416321674738451567199004872420641775754108356291951642382728451341563463073268234897512437292991864411475522021623042299363078178084134670414407763213420631947305174457007699331702204294303015464925310244650403343929391594959891748515738314022772251420423895070351394216428634037166244804545860754313566530581379130190514697248618490807663014153146208137639940027271688234812971813570187637013722635079779830294526604514749212529717398437104564243590356265592707324430248,22660381208680529934440965587759859630365737502029115748369924654698991903261875827625444059798716389150600717053198039271991446052177985348107490095372700835812383361394955848974961135498980301472468398590372824927166661721168913896457190085269560320077063240744390945543298734163933076390800852847268723891846915780866370885782050245477056357544654583119258014409021504561016925378839878361190561580782875056594285065583655990468688145199834395357403106937935824760810934700883413929457207664342072543405193505090717688282434192414638239406093224709925453132516053056802277292184257441746331824932943075086343111278,20472030140330590554727016751322746521411547021589348812503605132754052870300345339453032427074737788538570891246727822818774891000538284023878268779231690147875265496447517546051987993131805558030308294615301233476549529141133753715149811029684466002817709334036803452074715441881335148948617848448549417354051160238759910288354822541817903899839091496273435021826344319441409806973908079330351993159801831003550379943098083992503486981995525990398355622285332802868604496636639655839747683821735810491234886789689703654299736502370849656509374303361111199544583501333765966424789805698080099714702838932727164170265,2453173651401016059883376082702788558595819343620938909718003743834761063920578770151771007440124157356829685449240956671627119096461094862434828440771694576875873539491082895345114445338009283914246401641276451109273726841868022516636570181871922631150553766823691471767095455577358060583652290109547591748476465162423200240371828509110384977101559949176482932811774533277255627251591525680337416653414697852938946477765739575989782561041133771451257557157756072849234217247160968445068150218106127891386897699168070200218755068578136094949985380806928006246790329032200529105916916706533850553672076045608730359951,24113152339438360498818613385483602121911555739122745946787379178133957345957135620586264478203421944425299426192146461629084303328006516447630615633641891356240907180660156167532682435848933370915136668244592305335752238307655218128679169067763462102575980085156721937439825798887974559139719995948680828470417607776837167245694714142889348485597791698351034577938495332154328968099025912022930753095015877561713107591709857548795164690012791766454787725487399290632750389338230767552797412606609844617222343058516288469384643892784348204522341997782682670665258025662990169755315957866286658684293611644496873215267,23048127989879822710411192866890144848102725506107457207672066933390327615164057701868652098516421397166175276204189099923035751642625511125320886106285613893278788342927698548384268560900735111168363954600824026890037073968715675372129633119593307084369015870114545021114363768521678984746381386414166722200844864695581741219036038918650136132423598216731404838838590398569938445014697553573715959930243891120229359688175340044395042982004999256741864583061848148945179825358319553305735497035945950407010348447423433336328707080153581767979294379351950056937128181379551873194994067035954630194182060875682649437666,13618893464695086149676203128264379703835247962620883770951238013108147463339903484787069986025297587613907750851693587285998342458273645890621629308654871877706080796956646324471034007240766614380367007821000885398439611969420081154359024999574164769946112634981576459912811818772491470799900760145047753530968995478407930477477944129573287306569838212654312701822189291272987922653156057983889008935259264244527455188704827518079129994488508788103513618119832400499449348458232904888661877972105894911067928574676593878643851258312142433749927142945806711403413926146774157545099025460329680057003565864119710344042,23894029291617241391144328899509691451082120805949912944383938437120322549284785238294999166576087704069349411280857670919349460489513399500828536265895125463653495907166485758411354581066514943080277665731467417672021474933030712874768858153808012182457456133833868682464778542510979705494991241834256525297885337509013426009068419788422403698033836643374538850826433098217327104341285009528115639746062522009884356634868057714134080806096522631119686584895158882950387390079669636785522392222833493980203199840117132536258676406629318977553433626720193118379634005263005358473104730141003648560474105109737111011794,8925336938516965008397109104514048184046286665452569746388287155124102463448431342748346308295582163969585477123381674515410213967775651281608577967919981280923720344420733336038269189964575637162708585549385406099462739524026684819607311522399446887121322482655436562521377082292558533779186792041587188361186852658931953312216304602575717772394803653647861926317392730789837892117863267885605817028617970756887793540591824273228108598874261690153175536884068161483807477696239392976829822163308261960542651335245650622440817598987961098884462409657203750437907285145610244236094931259734945402603438305753971150592,11949666259971918796589430623190075546810486453882961593114781232790528357171489136086300172564872735213582648459678932324553671446193373613445392996846768949427585353892225809922873734606473958012848905522095066153323414491640379067553063059327565094898320425802881846169782611727703042073646692303198048486923691657532734229486488161759607766287874080676488615866925028524263799527274261471472615111756048644281578781133899646868101860588922113737985515123939591333283772116702698675273675787772365936701715064375893211337204849804346824788133348904362412793959284749560448461044309070434592388006426231060171764771,22250566339370324059402215781976249391077086920660167269541657986285216346026428267640441435642495757683689137264020871118649281135403445710476580606390835296225377720486579495200200373576733192798872047011357659910138900430140520045889539388154712432007987497852789128001047310532391671755193946030519165629053752937739899959567496721448943588557458516035029605073085115080892712303741049416122614132971525567297514147438256957998569093867126816514230762539072531021367441808139154778858187018499802649090111006001230394761758788797026721593274233504527845651968558769656875733771044784061166465882679811351871629592],"BigXj":[{"Coords":[107932666477475802631511202367582748861519739569035537904969017494701526323818,27810089900979531039053592509940878404833992140356119628629019981009106058899]},{"Coords":[70488850009775279003934303461546816167586319901288720095232797816893086714940,21365158033407193885213404713050228625397820553043856269267720323259910113340]},{"Coords":[96704419145309517259142970140495022508494287400107594467439362232020961329299,76628584944766298203991062873793502752240767184659143342509677627090500089962]},{"Coords":[28019161860991754547254544009397503028608838172584402384170752184470432984674,108882834276696603625351040619123218095898824500661874818668494090573839581587]},{"Coords":[69854419615803608419512220164651266075688659942948825382651503385261699188382,86209865999364219341605400066204025416938700532196803014526015416182305901566]},{"Coords":[55707469940275855599640808250448173151230633312005616373715718152006593734016,71581471827456608524472614862044126332419275513283203837579704443605501341979]},{"Coords":[31537542564214197931115404850756486671358385103785295421162883744455005249506,31003647934233069190792056145926504346119044635106496026002117518163562078840]},{"Coords":[71459743938853567115182393388387842195822211722537627655935266215390092032802,105621264392663357649957909617094860377111556629887291515711877643951632476111]},{"Coords":[100170179262204638729042299933877814060918019584852761639094198183345507736585,28900877763089774489040863107152228045173480683157331262486804734772631569442]},{"Coords":[3393930126761759176345687233491451168543634500428196687848693751772795262696,55773871461934232294712308387072487465508923595028614508001564000526922809830]},{"Coords":[35436174997161384450863357581481493940397620545951968086180770941965008242533,22941476771782647278770334144010957938195504420883358055133977993491797250976]},{"Coords":[20742591764203230819083960194719627433799141307841650214987882235851644570480,36792680781195360005281832466704518433303594582044389944698351592636972852101]},{"Coords":[78822613167932563650341174247543824338627391764838115664582901884987316485415,29305611808246076472515388603014476455888609363718621630903671994111327870746]},{"Coords":[106662917025753316359017201639970683777210765763056751174154469380644107823988,38376047705320523688829546978146661452201839032747402442602961204420046730181]},{"Coords":[50131378328647772110850225682895027165473791107252577081428683178756073747030,6484525664721285218064077598136507537588284647694850022336064622644441747313]},{"Coords":[63814576207919556970263190432671978386229401573575575774195362165468317841987,52351921007743438678847732376277019290979039258214198300788054101141627584484]},{"Coords":[33074537919982031116943260590723731125144796968052633499149040111855190089892,52462876494517613825042650703891412581466209764861573326649361336309483684004]},{"Coords":[46337244846970653814521818706394664913446423803670640514811670889644615970917,60622380590936530234720907025041106487069869976400399621024354043945489694205]},{"Coords":[68932201886808999446322681662607675293176822755681592496851252047161893154617,102558540543641758967834783938704783088913683989892796677072783324191846467831]},{"Coords":[47093684301174743530406169926797075725911173707597448168332637736184121729220,74517549523358620639964596401882412428175945976473031695393603496712918162101]}],"PaillierPKs":[{"N":22709559588116531632086995360614881758145847958604375585917706994116168375700793376291131544827864145364687259129107134734036373558516565338923959924703156876435469021413354399418993619174071015237246272863140297401272631661028437511282301913323857011886496541494453371682094558243513835287198378640755589750985308457641295136946180231598093936765306071278862423297167033582450972276390473663053961764398615170355333807856718875047329620163477731845253445115727590642190491372191245975524943279344261890117425706855830582201691939059698357650223528988243289388677629074389631868130733940366531485671699566601163615661},{"N":23443957150234287781524191819714980056334495753799141564738532515877512840928595615570444488815473106829833471979932833846134743028112638013245259429585839683894162551870479232892081727695293106142145837752188330564435054323350976552725925455074206192778580457152750035194725712966851385101176362564718763658489874740341398176203077931510475924742361380746164713522692182335455005818339528332609035897638651762193188267900136476551393608916669622907100712471489443414455950510417300576764177277906265582678299980344888299166427651633758323734973558749488731824311505669417847053850760848940423643750519510719400853833},{"N":22287028689259504755807149120904050002396020193634043129060485604472139332057712093383073269246020913354970143960065213561811698182428208504100112877284663913440710058603853492628849020664094889598583038642474751945815658301741607940280803922553940685657785019086609257141579057485855668397778602262577280637009340765489166395694519909332104264865369924039797553524566502151933416185073911748303993059047774791584591703105106437459703251723998725467328206119091524784524659754164199098692948259716816125731645175450298738430174307931086107554346505367596601043514472572775722114263120820933996056766066990263737006037},{"N":21778455942403717802437188616130445569467912356333711523204106321468333958250985526522676150458521139952234508699903096368286173136552336834061186195705878795885628080532376972447127537374960052755412900354192740274699607194495256559382391407619506149746521336051948176770581697936379025338953179299724284866217851767053361169462746892201032000776732741861429352495405542992367041691709412944529198233031428083828538853890568987466209820731450551650370292813109604532198408719181905952928419308306626664706489746484860069309396704199131581338218405332252354539932883923534658047809067343949198229794022084007329008301},{"N":29488834801717020514549557511738862835006604218586783270956635930974777840977382736818004943434492491272083417763033198615963445455042431681833978353867438176815774128330303688651059852719975859250721567522453513175104614385098138081209372251486732213899964978141377939387124226524201851559541320231331748973500724292675746395999336271645347092285737228923411234511145980962423027637945866866145915490526131803713409632083226573065035861386075817821231913413262072294132940186959486615122177174171466978866072639941945123654758187894442697758141328636666389957637295324259708835849664958476600091423260629670847006421},{"N":25268781854018641821625117526035412649921406362359871346957405856614663043063881662682001256500050697385215601589085313282671061645985003913281457834036290368462929918763869754871955608135979298238482437377851913552755913815405018774915484866488142406303297444296659799278477225336231564636195441498040062964451813900346208766721654100661710718867197194733579941984196715209521167970358227552984230489600141394198144474928084583860744656840175887777161454380202188440178263993042579519816969496156562013371732648143667185817225623397113488180419930136011024805515953457443050643425221010148081098971618629282508806153},{"N":24077030535873838147372990238338423111894661719881851208383511932936303788667059523325649062922462968249640702042151293306587810036594125879862518141403476609262478705296844024060273562609291573351215091787555942245982552314643486135981274381916357213038852978171063476276539384812002232533351978097782562939609101707149234139391638125337919614533689982228496010017193463462456934753130533077727108799001253943486336718218272844533405886783727956436625979626270665501149887064412642510585330023269746464208739229956710668053204092869919317416558618819105166451453240320574158658174090376334547079951345889147202424197},{"N":24121210025310295136286367465067731861316363403302816495348899075683542883649267862423504534408270521528934904000166037695519824119622953526124849500602533136680339478221010232315859804261374907195769559713293619918530079931895046819311703445607618111244570268187554380693098539122537784889700313005700764528116670706472264450599583329582635827622249925780628859318211609939169828662135675938640346560681426019582628979275573701346775265344080547061237809761964885298244705276139799178175782218409921284339726928435810584460742981474010807766522632224843035722465220411812727073796692626221078545796203402892726398073},{"N":26956782591324520026471701264974010002551430844929064558517606333109244333104364565707985261498791802440691867651722784210280888161145432103606824079477489895607158911928686613189674072708812330140444741131333062722881890279580684791181148664415766399323289281546841599984936640417820094077391333063403828290767644884268872176714175866593843027335088472731880830448148161449695591865312724115778446298294191846018327598860718546463796845910458753293225328770367785304521228332493000905274903063796918859478998380272311510096333363160486944174426731511854410356169028732110892177884127982236790065871058497952170624401},{"N":26249557760815986852034237905417683014048371748204856284575862917968310785883486514046189771449794410062311941320778404041317694258818896788913080156960590072834802977027251267292982532721343074208805165986815554608059680417209847673748867108719737464989377176319950884300513507127044766841349776517208994115342645229445634306184178062065483947743824551463650982111893910449653832587022792656303977671598375329018430362166017195461057586254287305421091325058340750141735758488815547176349755224428765382123772435956499576803085012124378000542928725389368171404677133866847871236251441021957443853014282022367009685861},{"N":29234737641692976595774236923019314216135921756073342884203680618120226690739166288052322806435356115092650761656136403373733697692050475566331202817414926309882834844059857181882811689758047525443057988160495074334079542319370840285641441603178202467820462588826229922786870937847036888109767951604636584098102615282750014508387427358079100450062680715472456836097388046216848854107984658532128468648705497171277133763535425127577293318939184956565230142817502839346792604559307183239212332206857888330805061669830296766718735240517983609617995793272006065303892130080909658027060291496416496673503247698087863812741},{"N":23656386949781378983561509210223997485938600678969404520355733863050336777307520388106184053630795530040934267843013912848246799628076757878172461266778291537251825140340096706161543161977283845709058224884977213986434571463756330276479208682952096086332163009127424608568458165322976353036562065434426650045708578336603634894217912009997772105108262453019882143577371634194078714264992380438885990335741008955488808069468796086801023973076920357953123958081822096146124559004458043648352764252390085772923647155984579633692639191141425745475545839873632550694666801559519849238477058285069280151324843991596401646381},{"N":23799985430892428550287426639163393896421663100337917557737015159273107046495772196531619480943457572757018895004491581880198797117841320493538657520011738472038586707181276745476787089472101888983238214242261897466709975139313526918983914349699164310009561585851364405464439780111046692215844366708075439030620693316351016954915727063684631173044817825576871464988585229583331260702104268887569088888141481975510438061934915565917441018736997897082388887244599485050548831301667982348795441755679549415459512278548728977097478254566801983960996625453970296380670902503277224729081061542066926552900097298958795919921},{"N":23398981485141581657111580810187356464859260220476400872431878471724619284703169207796437272649895475435460945312990810473873577007856956495840504596329080928974891464665270653430872926713471055976901497303072174459471872022720981442223753911960555794844008812776454183058593769792366230853507105586338576934054995838272457499054915439455088496111012971850904735289245691042597216634196809202787360353382667100073960437339209464655220130141692780283364216457426778903461083049390591667885095066567970867147659207581183606534554025283663685502553767113396678790806758816850832944906936477595076662914396730813902861273},{"N":24645804484208008107774215519843481629641338685651268289287772114412526440944111199969614165736177320304962312701073205538949325003439610780511806547845684862319242490345551374064725883323450769869814834613757570218276860284970150303912936880248283750218053176729988470901025014948637258535944241625099061769802348376561541469733700398108049774899180411488580995483844861534070436865153589414051441506488195269353530135159150725450897767102214976100194473384482425657735122085724544900424323758582364844065404991831422328546732900258700279735848044809564185617079126240413557300335393565946088211107690073344594774029},{"N":23664465666512928010084076006211208070039097235865486451752383277009646489200010451773766854885315852604650109050180997494686499532996982524560956955784208153283884502900612829692080614937231941501430129101050170848135543483642879522140453631883679490750446245717832265221232589489474380464199065201167874127465810334527670252907568617820949350516778153996202871756067806159248004814563340677682071536108582393686279672503548392243690499337315202892692273695083478754736347613219568092769421161385508903701795824994052294039246344316342377047969959511601521901736714883097032290625287691937066549723767146291790114657},{"N":22165609813091667259068375406991183583538522584875908765309739098448534648989953434651686788146626220283972510122914357995219529654582068510398362007031593307847827533082059785375352080923687640731375327188268078188971415753864060723639564145551626769223269559344648109409611860616931934210627553354435590764505138165455042290624193631088250055962033560484870481238850988856340320616852463026890656813658017413542014132396994215496811530247375977104307808133564653689276479112825279061966541271092780066027501498091088819663615972345385914896991989394778860649710938578818683661928070093400675043514978345177529652389},{"N":24352137164919775060505902875895344669551891343219870713119659495462675754712808458066602996522267529841963340495194383402601416044030073771848283771276922546693343786778909195920195728052430645791682092298169597213540403251589258864324656830830912032021695409682689693414793104678019843226941004344886835923010707685858497420014814885662783481710790760565625597934856999445792014460533464855807508832344902590088930105318969772303090927340774137226985715726042801943592444113021856673268564036683304420372700405680896320106848396385562893886698977710031223312091933030330629827691164100994176634674536649129152931477},{"N":24388425323514301995345880181969195093222141730097776998750148283180811486102209130079655780738706237274584643472954914248041737365215477795339570700387683883122567928523036945799350046333477704674538444513982433086664207664876244841911099162128315338715496189423824903190803189243082722638413039421880070666657272413079871744422617706188003161639646693501252928939859937588136677607569634910081471599993513483449765647227570734163189729311880395414909879933139619835138785852476313690881562300854512419432999005203281002911021482679309149225773391703345476483158302622073477221903694296256566718995262186459619480089},{"N":21604728584405813409256303272593334134333518895675489098410576803850613670962405878762275711641486977471395420657043551402890823783906820971712770494973201278527635005537714974340519544361402189093858595896231890523544098157276831993549216761475195055251372273062282101577640320665049775934814411518181030603401788639796770568692007642464803606076672769360069701571162199680486773757848273630254180550410784187377722267755203781450486589090106764541644204842436002216866597611146281471192249537747681020939314396157603364418120170135828923470079746789793341042476885118587449440114091973976013051496269141578521399429}],"ECDSAPub":{"Coords":[82191134404558877049244897640959846424169542769967270904890689024123037541855,102677683688073592669768840687667774566029618427936181452214529135934890152533]}} \ No newline at end of file diff --git a/test/_fixtures/keygen_data_3.json b/test/_fixtures/keygen_data_3.json deleted file mode 100644 index 81ab8e82..00000000 --- a/test/_fixtures/keygen_data_3.json +++ /dev/null @@ -1 +0,0 @@ -{"PaillierSK":{"N":21778455942403717802437188616130445569467912356333711523204106321468333958250985526522676150458521139952234508699903096368286173136552336834061186195705878795885628080532376972447127537374960052755412900354192740274699607194495256559382391407619506149746521336051948176770581697936379025338953179299724284866217851767053361169462746892201032000776732741861429352495405542992367041691709412944529198233031428083828538853890568987466209820731450551650370292813109604532198408719181905952928419308306626664706489746484860069309396704199131581338218405332252354539932883923534658047809067343949198229794022084007329008301,"LambdaN":10889227971201858901218594308065222784733956178166855761602053160734166979125492763261338075229260569976117254349951548184143086568276168417030593097852939397942814040266188486223563768687480026377706450177096370137349803597247628279691195703809753074873260668025974088385290848968189512669476589649862142432961039568552416620827221037439181584440810559691432838296605110029537220506728821306247186852322590703853848215024475507623660986723293239194745447669211432668444206680525690226864086158583684623546925015203279097209425965845471047569931900273426997303900434437960388506263339974284557558925090767311953266606,"PhiN":21778455942403717802437188616130445569467912356333711523204106321468333958250985526522676150458521139952234508699903096368286173136552336834061186195705878795885628080532376972447127537374960052755412900354192740274699607194495256559382391407619506149746521336051948176770581697936379025338953179299724284865922079137104833241654442074878363168881621119382865676593210220059074441013457642612494373704645181407707696430048951015247321973446586478389490895338422865336888413361051380453728172317167369247093850030406558194418851931690942095139863800546853994607800868875920777012526679948569115117850181534623906533212},"NTildei":25353120959776139123294155818546513426444543204238814947681743626639583989194265533184090862296087842527526282860965927846515276605818147773016966742984780344247645856238734726222917730082852005118152200740071409410429096265046046476115230269737050878141459099734884888260830179970728221214610731604157017545322535971152193773221758709395769765431078738204491094323008301356895841037132747444047830530409305765562694358003007195242702308043142399969256485870876259711230128209178441443167004632638027691911658424285106297785382963002590496015895572427776988235599297735903480964253948429971597628412447354914215359401,"H1i":9501218113444747046512167891740890620022448184208745016727575118910400114702536042272711158066289559244823855716406559728787015762712355980741317225927051706399078523944764818407725281098361563758658548109686452917704268397282493394145905917631338144130662786869889947744035847462163212831976185178442327943506290185820473986106267053867388409405767987475830498385924106417897644176202343305711004215516685101951487059182051580662118563531777396290757514364141633090265347173402382594862836539162320425532069699769291364183133350523773491418365804493761877536170212947415911627316964969637971056063543234131063060179,"H2i":3320303882237934822574723730249906877625782534310160672723504685750059065549780868692191634937564489497907122877469551544554741543440051593275714064385262048169355745443620314041833050794531307335253819559894664711581948933864857312882072901440293913927021712377972600011615454373450050526995352982830050256391443830850515525775497974669346917338799122924286263331475349263163070978610950486766234107397409979634217974050928014066919223534136219934067215088896161064759214148618049130963680983012705398939807692207987093138939884157043400363128971664499276483693036909962979142844998423058170845192989653278227244556,"Alpha":20732561775640468843189820629032235308682283210733557158331586346342266170157287373981525477539259420835896276700133279941474335631672102960104589890359044572674841673735214511627480911483387051399163990881604595939601718060777319063199867700497344891253520558476439084962151005545031604917580651952180183399066736907739112661219796453197062825684647639270615214443940435795232360890566507167814701106191243975844793259532520857286018386762814303672188658256151061897337109222506852066460866490063233197310203328166836936016812651574379493431741588697916718378067400253007407689108311618416668330470270043924491707252,"Beta":4621423927692281494358508464890855570493048530934161606284695218718671789963267983542650743064596696405090143265399353659959943023961544294736427071095425932422318852223411789935319864058996346221430265626513231257202256422058201824409620318993689151510320160933640274271337052117901696269132753761495850658659758778839258907806037018484044910244179495406471903727313278882358942053030917828596923349621400905788040910003430221175717299881426733722459041617891033940645957279610588302754551583761941205936660530914297167894248920533375747175164930607331124678661862407993107444979385443455814519051085167491564637338,"P":72437030130190390433067184898529914674410475226542717561865499196098798652977033216867557523048657537778180287761456057409620593661488572172790091595561538463733487332798400169334570085255675426864728765560674172998746425704451721638323576149281552788042502052261075126760881412359842350038466716010870713391,"Q":87500553633304727432834574557710115615405349531289517335698931449056422870728208842773798928480016180173305350243131554519316616083188490102719578036806930245019058711147888755899228824241800933160516592496866501136017141461824084688288802323765844255005744140993554087307600594267353648732488424706889984123,"Xi":114087706927866958996741068446375505717426050886404027471258801917837190100819,"ShareID":70024534756929667616115849317753032895580033020239899587896153938577578972752,"Ks":[70024534756929667616115849317753032895580033020239899587896153938577578972749,70024534756929667616115849317753032895580033020239899587896153938577578972750,70024534756929667616115849317753032895580033020239899587896153938577578972751,70024534756929667616115849317753032895580033020239899587896153938577578972752,70024534756929667616115849317753032895580033020239899587896153938577578972753,70024534756929667616115849317753032895580033020239899587896153938577578972754,70024534756929667616115849317753032895580033020239899587896153938577578972755,70024534756929667616115849317753032895580033020239899587896153938577578972756,70024534756929667616115849317753032895580033020239899587896153938577578972757,70024534756929667616115849317753032895580033020239899587896153938577578972758,70024534756929667616115849317753032895580033020239899587896153938577578972759,70024534756929667616115849317753032895580033020239899587896153938577578972760,70024534756929667616115849317753032895580033020239899587896153938577578972761,70024534756929667616115849317753032895580033020239899587896153938577578972762,70024534756929667616115849317753032895580033020239899587896153938577578972763,70024534756929667616115849317753032895580033020239899587896153938577578972764,70024534756929667616115849317753032895580033020239899587896153938577578972765,70024534756929667616115849317753032895580033020239899587896153938577578972766,70024534756929667616115849317753032895580033020239899587896153938577578972767,70024534756929667616115849317753032895580033020239899587896153938577578972768],"NTildej":[24366917239515824974480442558600034492208859976504581465004349103795399783288421050831073024860369440303795551299953821996018530997630686285237603133194573622718124597460737572013930327249120648302190449742363261573076443183981343509885970573178298207488759436277685910850783372123719807298277837194569211839837465137044422691734879346883675317045008891659749391963717253895556693016508386391015178130161988317310806894350108084212611277788190739249760699147435109968242744158314817905689533615803297627887736048945645075792686416602832677541152918424023805280241226851534199867283487943291927564365275467582581271053,24760645214372673899925400730945520473062951341429554908754617530444794660401836428698520741646966955149111758288194803110363170964340801072472223878272430220722034553855593944561986134993071918255771235073978495918874383067260043443905506152815841034811512510858407909698555608803009379935760654878372301870950275270724586431009354962811874333750886958869738872804882633350285507993032763679234057221556156642769183354423672540429587887851343483914923600996425040023829456198369968692844034517720322057627565080062766276792221145223750390964637842847390939964073972850018793739320669513533403812272268817559996728177,24335507174653830446370401218472354012341984065893977351232759664219171991998539382418393419142907217562914494098827810315198583692551476438232634594991137003295122745831430159532586451010818106345725278793436836406022036374386618877645773128457664942790386603953998246404350465143928182109615440037926218085391564421745517307996722808502413850991173460229650178023548969664557299385141472097112836353938598657235574893430259143862369227601052831476146199261368117297723539373329843815951236997008000605506966102265798289158763516254914284024816124992986001907541315389832578466014006010753144367487203071067653140017,25353120959776139123294155818546513426444543204238814947681743626639583989194265533184090862296087842527526282860965927846515276605818147773016966742984780344247645856238734726222917730082852005118152200740071409410429096265046046476115230269737050878141459099734884888260830179970728221214610731604157017545322535971152193773221758709395769765431078738204491094323008301356895841037132747444047830530409305765562694358003007195242702308043142399969256485870876259711230128209178441443167004632638027691911658424285106297785382963002590496015895572427776988235599297735903480964253948429971597628412447354914215359401,29849885402332341621158797110436829396646924395042456662853244309209629024048299162272105169817115314715561658954210859089958590864101117136365470947498907594068557026997249170993874294161892140147876022164668279854630146959174794473879294364568105935870579392660025720467645329300426773479121856766502569984218591054914763859996476236063750210092775547343099066989888106146219058807079888624162205626100491953381078296178689026680702514982189001052448223393538379392778307314168895065497502603308074595916000270844935723623383768691838356870704054233137068509668072099435779943491520206735659166266930856700483211181,24303346306264095483727907643814355785838936488512300414348142784703917728792656928355740144163123550572150171398192480623395181408570425672723511597546032812698562984141032629389936754449924613948711482870260420456913877526422469201798411517711928654451945040790337077196569240216228957228264615761147375423719114756511538399142649755527243797217920772594702713281103939163745422429156605226253637010451757984598979666631182977221341184990723224510127460146263007980086670575857365789365543477249518437176817144448210584125518855115672157465775432933601089465408090382773104140011964681476656187299047937685144419517,22663176204438991528847068755997123453980704364589354833944958947785385672266299429364336994892902925142195136026995771544990684289261678272550855925683439714148609523477977179010696117909805695701859018966669150739407573082987363056991238107146673103957237104655136409343763639221993038484198677605284199701204669351878989982962102150055730219424526668206392140254467740757469800556697236694088468633665970603098311956910105499246381935436511205439918717236853087415401432056630404175846159692661637004967185601880460514710913037913825633119857629058574151126418040291146967097319384900092639447317903904481362864461,22214406206988221120543596573138808869312423548073528052574227838235500966558488375856182495656208729058219131190228351185002058116343873479198633895772314072671413818939926736318457089940649635331152484030046857163634723835906012553106874988855844579826872824922610248380139635284283310239564378546105159549071234915504686574306652852285495484227675227079507874801353534124836509674143920296971261218965184384289987323806590503991373066703353411925035343072343417173322682200148341574699074894310006001608609036165489022667366737175975429277190015768847957906950063130121905159960720849686267420829596753652148430921,26992054981062895613627607261766199835432715284801801749398907129229048796737348701447929605174559094984645968238323112325575430714478210726667128296579144479334211667227791506349731191531989884599385537951555136889431648507040431760656554949203843341649040209953028348323032563665739842658324687215759862340780391326904566525914822596715715051383829453805370490781186878600411802395931887164480044180689343432959074712196207660797594065685195126347713904229309636698471250350144098081500570797555478540127343168177689831999672573508345263924360426808488416307292793876390765153143370885661040432948994217496537757037,26883601429347938201866566412436359463282736845136879263977010812101340295160083165177085686402734295128738223195845941394861534416081222492334460738589328436684156816061652087254848610272225814333318089300032442695939753398569200283276971829978683842747584203047240258517693679059389343721225356421724973291878661622168915849085533925700422984364421907650824486413330797840743205222070155228532990351439410717713883609930796830287062705670943579996135308824473851899048361474382520461452309816639861239026761274994745411785747289015653392872405877863169928875880404134872170564729075194783267248873823339090853461089,26675898204441883357756938810501612911006923314113656530850642169244358619346060171584915468088311545710004060513299980257359925141562861692364285790755062927815783069742814310907363159744172010043214941961935176791603921250085454102936917126214113873120405883118273636844903335000473865105148550590214462929117780405311499444885924770449779157142014006830224170685309315154438797997384633339817640551850145502452900467824909085498261391267709054450200313476628713250795473832792093350711410373115197160491274663551092524073340836221397352664353235247831158949819050115215290772010284539607969271690219902603821582657,24003425727589170532663869192322030538943945148822062399216337010945961427378027710524236529045097740008239529891693854573603730323074574387306355517555029571396270483790272731994105657673718134894396083438028861748333502807033025075738141563799251049728691667635160338770958887288469952328987442729682278796947289053518986771911122562542149441355230810099948748099507142060010177281487688268845292432759376770532767245812643377347484905682286529844081415426101824234408564247618590677966518836555327692461478356122297916534505785216531638872958168430321684571355170353352724268927780693184938724886624339722183259421,20030939948791694094921106997836532434578994294403521371501479100010836848962747077471607238761388497679145378822499150459403963802326636975589780084279335637070321781313502047027883154267014733038805978970710176410579107929485519779112034850622531520287022547371539439386174878773544830750041302618611105173361798826270784808992652396596786821436733488377837349284332001375201088424331364286550732742247150161681889289004480841207149941594126907534285607712061943572341899739867922754683103581617612214747009636033814762750497302268078808823665919929249386647148964298452596399586628310864464196272071720395192133489,26870132374951553243581913321377246229771795848056596419360924847337540300978229013002723427615100062690126686631934134732102152941473371391783556453709425066357685692036492637888980565254013131275256724381428020710512422112788440607830591932440438849890272166273212125255293837259298348084558313308788645038416611482549103781514142985867750527012906984385110191046837459757808864741583473057341019452578423080700589131792924736182910584032669431737863108910781465411300404077532371983623221078943741087750842713540302692591604785862604978245628364756611702919842339423052849035969584933072813435912401288087398604921,25781309885353513172762417920559862373653633766198016154431702305819993747433843312735651525316421555779956949217599915608247344211910767561492880228357017663462131839160610108626231391786518524635537763772771732022138542377442385539024671393136972077400774477946909998449518641822004119697621239956294809097040644518494643152713366295240127317300380586618659118989790014789381034410565903140125870883802621234783419468923863900036725871332435066935174631607488613764393382263135690909855298574769132391272005233712859895795189174927584736869111985784832037628893972777670733794612566699959726190117505644366934694141,31307948529511772422092081620376528723351660195178245630091738647550584183808045529448767036136429258045017880313805169530174754560039519751935200016137594525166410173049351154227454247975670642857061354284229524586536451868860885813714578893448403685065908393856455188372709054731049692863370865677701391460552630927498629863324809550335559817235997586126538332699529118621351625401581293898546298753212618743290610874832103267345624474884402930254336353399762494911879332332316505133643206864735435683656288655072941785814640312959405902536938955107787448304325831133755028455554235924936888965889253927315459519249,31466961232199038206393986199348595708256863299176374148227521484010795684260339468184532260347996789772040097386032241172658309499404470468218492541809815234208995118730337303514831281668817831605535229415260143432704661750281094187807328676322407373913844432440683972812394664524853699586055958635280164067281091412249301309251915772998531080870705450343112678791059297982033179252277552572737658097615320288170699408198262523087724946180097295208523307748556241283633289461565623961341136472687878275672606572269060361808996126027608464429012339688636176786148346418213288770613540923635302757146988963110333316781,23282315206683722596094270562333648753439051790898100314922005841725502497093211800334393760989042727597691714582193235713639238284172358062468387217727181092939568556559834956352385929118617242221861532950969685568622107078283773942779583910577282365015752267710687089071780861330758005577221151609134583129504364837341221471368611555190375227501319216183854908348755278500330379812379883892909358375120467449644585220805660246421673078936109889143381498767668445860590513918867961598096050612727306953235332046855083649560662539716078578551485777683734466740521988744140757231408246451261769915726695959921765032997,25091337650425677853684475917739333556784369056148930585749057080859640921803414967035499248336819782755466354804640016025044002503128223804670636762370700960312352761126598625504662989187540799606658080278007629478214427447535566556662347722562243890754037326739900472696108231869156013516647618154210840364364919089100138905499001603568088340085110153219085814807927945152975657929969505495173887189020701090313994816079981109190512102678874334588894915787220152560380696231794377692004958328931143825599595181025003997691503128188855105160353707735893011124272774335559316106266020514461879401833904958202494061001,23827659784682250604442454473547796888740733968924087692522596947210995569582513002946432005898923676155984614087332560259943866897650716815951119740918614656692843602108809220144973266843900928325168304104193270024169252614460073574472494366384192690720704949267653372513388389564250659367518167586555169618994627094576635848093242114762843534765611200879960614166650643590955853799316870443339993391685970472310294098785089036360647811365521892090305001153074254408707786436158648387047030717269669710808288303673434511182840032065481730245714970751088620360458026112893074508503440200554493648329036195258926190733],"H1j":[10024025457847388392610646066298514243370787348338532750631360639913721829629888261433439914402718667116400994500512300775136069581637894623537510481269716297031115527602912311323880048384727148486222115704187210174101029381357780998875764924841198846224052749406474209451141960414618133437662859572202780961023516801781475926753784006105642819239485607653090319392184244933555747381471676665633830261574288841173438644814600240117247473386184548108338325639763390271130259071021112922069642676901166841167199223435257080313456925802886649375691201308332777566495693037805296244451983094124223174758130752134991251259,5540062908155010932513159905564312164946355979316528931149460136278288806659772940588319017326328094974853633874382463976169195549392127817304835111543615409573476314059060881338397061412436243810139473181382772109210271463439624149555390649740374635589527762045108740275882849527695527198385706268316952416235237543464363519203592980469637771074904708426157233888490918907104014536294284692202685017252106362206847500376336741712522098586355602155374318553270307953934712780754034315941245597336144803859821983984428471938659224631751193248483706020880124594451403191977963618445462632103562894369717754678411970157,7294264017980791887588541945948527964732046841763268733085682296431903566128312881527716171471646888128877802321111011007465120561544014131687975703500639986893207003039277321438260744935109724584373350656877837682253991859961109267518971621013884413991023503512551591742311046398421527897782104779903020623974791981836764750802585775470044046719785755322826006147242995196401054126149520747563133877218253475355114168420889541015916952420416242677374123641966631897855997275959219115766326404348502491490713975699304986526310844436386187304302850704361098476666746013218735172029033252239873173053183420490728457969,9501218113444747046512167891740890620022448184208745016727575118910400114702536042272711158066289559244823855716406559728787015762712355980741317225927051706399078523944764818407725281098361563758658548109686452917704268397282493394145905917631338144130662786869889947744035847462163212831976185178442327943506290185820473986106267053867388409405767987475830498385924106417897644176202343305711004215516685101951487059182051580662118563531777396290757514364141633090265347173402382594862836539162320425532069699769291364183133350523773491418365804493761877536170212947415911627316964969637971056063543234131063060179,15798786414829945409990379475347092437191933825852017565866427461531342919124334651290935627606571949258216191049074056902849155877229528326934734579833314251986756112086465450838437292200045064209850028597082873902388658379469441564667669701765841537160309665720024332706155566138689213961078587239980763899119769146527020365437175547591597253422987241897416697834718145603044863506510817025716990741255205962477142190641478116356939618991137525950385435749637759382858607750867147376236491183474725313362128439752969796168290272602393139910089130691220986679844969299810559606706770072567820176650336982258175656069,9335293725151276608993402038690349490322365392613976918346481216796454921531989892317554215286413208524498017721329770260220214739976276463115767516661469141467987234112799014449837377419827917305931640946522287484467505347102693011074644574833321939291182991369361351550845549986196632347752029739003400876962371840702829213086378506709453044627207644282674209652698873675164479665879605315024759424379670463637654094152277916485019222649587458037242630015801094579916767996040360006216068355347853880839844214694922100092515535187976540400673364286904799817798092386690711558542096052961324458158162316849747049802,11928753658530568234030789407795275088740952723187227006977773559909074576164921817701724786519460916583196165018163510774039491890001017299531322520325627826211812869166690445989428530376091680807701566180854522056382923625327483414081231404244458202347765643506681512770879868073522880161513490523543914681148241833246281106290736532685240004675518845019764469048182810211653160870255293592651339935498048137995182398802459841631852186888112285076188858851763824315081771524248572039785549974159773606819792419731561145595921289694471859455550756883293661073453125644271107011011223441502328961618975292599286540534,3281434421303304451534752490245528887879239197847942017450979313729063086003376295872507109217827492860554007309921835555072782997029442232019030164252143769859146809734506916627953872016140383116721175515392391691229687480990552997729334078523811275423771755788388400181281035140972235710503768780977567025805917901565574387698038208089499892809008311004708551092635216129712077377038639345772519472468677180077197280667928734700336917165150723117546746441573171713790905181182966896063824517476166929486302044010896828146903022644169171194514314475627079949830761751962833520028060036397259454122764395181619471620,26798335028033483015595995885818313899416775173626251303214746152969095667991567148306665607431284548931904800914249634868412622200397325111043206330920355980127737464934048444736064518743501106031852408038680600709174828761299003903687195970226223339349891916494477088540593890862438659139800883091968208023580402075789145180476758769233643214633776274238005081673345069570155874633220460290011162900873068065044353387042255376321331197145839355270876626896209116281706932058419419985043694684968787877580180579063249938562059688827441196772120556845945709093021801017783532024267437712559776698525435075445312453530,24379152218258906482492311550879222904032299657142525355457269472724266562417862087603238266608926068245433152992105088073531452805187189356790567435332219230651301413762858849116755355885877930185483851669316692179467165059725168458003778120562044911094551614016767541895327106348965256725682881898632251239010971342586248735804355885933092854432575702106523584026168029150861398417670162335859972289331761535391135324650197244391340985538289280848512779115086784546807731473605687728417756436783747883720385660475468617431753857425268742613699673867257484976547014884809737803594445736805689004998882232608324939099,13639308363088689304499602606006748747737150113207488794697369879342136632158898637529348398215211110838650184450613858330095458701807309615170814350482223259077017423473614957663630359321153124867291328161758174033028972972743424022771180662104664036306205285576270109455984955077713540350117086087967860191108122028954920957836754439818988959156002918996099715859267715547983808966864149367592758343569651869960032231333418638792990340363087590766121964019626938526976202582697949104351928836667810574924696014475214582129919944765647849262874087078594478919124600690586319504349329877883243753775251538124197406468,20806324398112704184576243642308446225385834167758222047710915865491553221121456559290405385050181445190026351137186843498701962906728774890279265822922302262674344261443633266351787522423584433088856438680222017039801221837510594012303704942258177163584539612102842678739854493210477613035711103258550560273478479277362352841578985334600196007452719273341052878795457240578018430753780869150598290734861026318283861569123861098217259089119729724503263571923384603566241538064572968952230647186501970761685868678332574820155746476145383468962025352911125509572618602029024652380792594855032573631797517407433780124767,2984534567830588608251691688517562019886934976940239944296177755224193834812017598586976214786265618202828155437088641819872658344085523203617440122990791586663797768559098311449463943487720199704106941788760276946864277974792415345700942642550277726023952217616537482804161899962996481893200668973584167349538844293867619144628567178172496162265433563681342772983054368775009029385174850706677287569940753312983986212778939947598815595002848721076684937312652495527309505744053588382568512842786184034878250903582357463020880854201625144449160004603244837252628379531756302498757122746553391615927560808029960266625,19681285575282653686371866964026575635551812532880664611876190222601081859688141586553347439412758942096084877111883472375168961225184324383968489352875717670106440217006572540605411871630725641391171380023993395232691314662393923848318294382993540810449491616527524662991307157899373490742858664974644838212306475173795164847929404327886006104677091872987173592834296913553225843321065615965897920646645086083927169011172363123935140462214285019059726271437492418936191962060610764641005376370506280067258828239222704103600176916708092576268163001234852617058752894380793333304339677721072271552272594404600260363861,17663259858420311330651766819499911841067663794994694318257191199872170158137865025958007148817857781638492835306514771303332749042829120815317355608633338052028835394702531720709875380635913577846095483312528431723891955957026638053673584169905737554185634030129649039016018518994356839547241764882921390944931575304729587593422442361903863687010228628846862342208853396044641495867576785861723973159597871732538239253298128840563941065388954934551651787261972744712209405583851147359110032083949020208533161960188954813739180009449972293158373021060141688387818302891372350131649013502869609299334048318236045598871,5298970575809274629438935393989318057761764519542767586120836445032263316761487525811021815951911099884013107458570792999455520743412617129043815044943875968069243444902286481323598638834526377417104328855033745156522241109248831526582827196555064828920153555458318257230359794631019067306886747836486535385255549193636393132450664433886493509087281083390290568729201571601929480774638279112348846248022706481056446460853658284203145411150560753280109970030570227674159359532427547564201906120131477615407933400264643596572008335881981150704968737407428485573362254058660832170694074403410494545950595818012264895776,15913403370317249903846545253264583237445426368566054050873204733344285093615027647693061965382356514660489490017289737470216855339451599323161686141225364898734459213317143215419647354792387760477998230133600223913390244574171627679693591136928514907378143973333998319592583595882555481681002615976566590485876365765518571760268938260544608828017208378436062792581980653043467844284389159435925884731521336805223809049222649874552372676573497110509098941429212961378401761184902390250234585999298135037647853709390803265128558710383431672409386841314821848625953345836234945114508861921890833145094378447829164485787,2290909140884019351426250008814545735225813230804981825833168241438120125584365814035371010990772186759925886882837107545743421629040643022748869446583860483172598682089887676740059939878553272595424436357723367398096377972698494175572434136161599049698027302739164581483237687791238697379241703838109655701932792883820617202754352159209515775921392841098109717647668579384288444138762640166641466203925793570935398566304261495839675905915184706531257340555764797653386663178215604213661066377035729358506114543600757612373813217341582075351741934166661911856401287953329256496263459473595206461438549716253839581620,16642615813361835581230500131246118445590603247887791817817316273244438476256311337001611675388574331977410141699297630317377151836311293305027088331310025109780248001730816502531361314291505497281231329646213545390817348454790771602982974763540004526670479533111992035177312072478629306988622806347623090425003234077873805375141062348645927401285345899503907001825760439541705306585854742931882134500925066002906885338189163552908934604616236359806104007315451823167682352183241953279551520079950202231330492255621315016646701261669501844925563045252616708085163536257987840050252877140816998011230187115088535718084,16010347999096675182232092054526583890655342476048555695134478148077646319292254202928857709848426726687922101503995183630866920756294444357812738165670087524526688577215556076807546011943089084967115014780281986236650136100212790809186133722139336439667178800133917927993914606420172087843235000579778849526996068548810587854703520128067422195406060143205277668392537421614569464766336104310955572146529110182880365088792241394086157577886083440548786679580400292545275535505024808973895871707731827445166453079771165377996477241584002682623055073167645192536278061988188027824852844065261608054572024963829903461213],"H2j":[3368171208877966911054339907901878144315427177489764716664525147952589494997571345476952466465636584372230416806643927079294770772639785886747559841089671070120102511739419185926825275343129268693107584218806327021288882477748577914215697371729166784288283440868236399459954587383445757960644874348547417850473459042890356424271874499317095341286743556259239705095932387025485711185437452734962326711790258196775033662070121656155183933539103178989257156247756946175745703344908852193344259286268186560067884170926994359970521939453852919421341990972981960061011629945378288288327928173529860414633963687461741921536,21571995110918784658914871089233085747498481392093921476006031602493786671249981878215451382962183306832489322303548281716296137774931836883062638257871799588636736223841397596603236825079859053119441636830060533162035824030490541191082185733831191460351456499274515867869223195196735738841516139421749973183291711819985317821732516820314960505801684638233368245136026792456696584282458766742520555425925807015416047178765452538113430822668214923191463369535833443605844329620997852520039896259519774630621573507729397714725431894641714478634392952187074508209560077240054333035743202911738795412331854359778973195140,14361846248841354239738429614485615020817620015740214377557182447187161532145777460980697522328331383902906916852306307688790083451608130261350491455026208295552005757157547049806867066926847972162187184750531821995727255016828133897770613409484181886065535775699953909464798003780913388918153183011660224430464726560354626850573087079518001579497098985920611294338802921392907919446517107741456227975646401634963060678572780580998274987217038988195161229432595476488751730989311796958677066257365863948226172977171594831544011639884849989931328654207271418544321580100757601201270000125579606365984683036050427736901,3320303882237934822574723730249906877625782534310160672723504685750059065549780868692191634937564489497907122877469551544554741543440051593275714064385262048169355745443620314041833050794531307335253819559894664711581948933864857312882072901440293913927021712377972600011615454373450050526995352982830050256391443830850515525775497974669346917338799122924286263331475349263163070978610950486766234107397409979634217974050928014066919223534136219934067215088896161064759214148618049130963680983012705398939807692207987093138939884157043400363128971664499276483693036909962979142844998423058170845192989653278227244556,11392712315645310673556256100365181042182208368042016535682634838624439633464280578340353342992697843456486856323709208993769929825667198124843256857854149171724638555790573818365215224736100981973384410995558183533272266822358013891089919574254939818330873527463833155579817319890250882056946018928950519405481352273564274138745239339555689528027209630484474043328702633331977168775903350557929023233359205813047128230741363083482041365845075249319178793999005856778680811779083784522911420519825713738930903604514930432327435755406403484491228343075922083298289929463367612180095879814334515830338256256962304365507,16128185768089596194287119128971616467728481679140585100708821051566471323843047828854183726318833284371487280925375797724567335316422823058316454263458054143106806709907496680547056853651764349462358556329487313360470751830659004515085115085503406434144518308588359624087795942838829972724870214686385899497790143468039433972576851570857473482249444251166188717970319339154993972583107254198134043017660882069243167380269891894037618164535745069845632928065376946760432598515015966819900477155552863106379035709861023910264232532374352692943776001019180723682584987138149276551856921296644229421379331608912433891787,2216711622729147643119351601279604576561222476671706440839914460051282496368367881534683081378746937805707571316950268212663028051018612966825594397873907399847514954700788018713085783872783310865267981225782070802491186153117333152717062661110252994273036185050571252614763467112197381544773361260703440205625252670499456016034457927577251901944688698835868136916669160283880144324751412122403729270589464975875662168775295336481672192780137765587777958466322897160031233145485380452023766308429956773283861365366429753738225270634870302712702783980696520536919562785018253963272279772947237341901826167911636277398,14567981249611770119460797088791616882610277285940857160650608249425344206528691122331543913667869847178068077135905754757970717904714688019328854767805335556395966314263235325078374161755665460346725642944725762703818596015903905714083108502634334495870792846224658572820537006327415243377500340330706127007814008821793048336577227035431648149947100606065474813247441707074217050761365292856644845629066245995828609114930249956124849463230151850823327413055370077318181578457937246716760725440912216906628033172873929155794447444347775998977195569636526530564164070920144286322379557192066768871877841501668738723305,11562467842115790891804601373773643847126621903349499609152938962148770984937205728801191644445725158989276699296504193090664088648177394705510081647868491010141118677836328015755807190340752111789458182176683494843129204876774659319228937425442946958815453444622877125277511242659189800732695804577042735408856749044867603169231506434230337165888447884043777386886336176295745762185799165141571995448994795987563473269027183930075484844146542824749783851152327060411300732221330038342605240436682988238960554043191119742665518743299119772957848539797927531910599793668616983919654530567233469044356313491217598173963,14001988942247671750781482079375285966547579414294794319094213847379686940578167330959958747320137628734714588973465688779508774703004652572462868416321674738451567199004872420641775754108356291951642382728451341563463073268234897512437292991864411475522021623042299363078178084134670414407763213420631947305174457007699331702204294303015464925310244650403343929391594959891748515738314022772251420423895070351394216428634037166244804545860754313566530581379130190514697248618490807663014153146208137639940027271688234812971813570187637013722635079779830294526604514749212529717398437104564243590356265592707324430248,22660381208680529934440965587759859630365737502029115748369924654698991903261875827625444059798716389150600717053198039271991446052177985348107490095372700835812383361394955848974961135498980301472468398590372824927166661721168913896457190085269560320077063240744390945543298734163933076390800852847268723891846915780866370885782050245477056357544654583119258014409021504561016925378839878361190561580782875056594285065583655990468688145199834395357403106937935824760810934700883413929457207664342072543405193505090717688282434192414638239406093224709925453132516053056802277292184257441746331824932943075086343111278,20472030140330590554727016751322746521411547021589348812503605132754052870300345339453032427074737788538570891246727822818774891000538284023878268779231690147875265496447517546051987993131805558030308294615301233476549529141133753715149811029684466002817709334036803452074715441881335148948617848448549417354051160238759910288354822541817903899839091496273435021826344319441409806973908079330351993159801831003550379943098083992503486981995525990398355622285332802868604496636639655839747683821735810491234886789689703654299736502370849656509374303361111199544583501333765966424789805698080099714702838932727164170265,2453173651401016059883376082702788558595819343620938909718003743834761063920578770151771007440124157356829685449240956671627119096461094862434828440771694576875873539491082895345114445338009283914246401641276451109273726841868022516636570181871922631150553766823691471767095455577358060583652290109547591748476465162423200240371828509110384977101559949176482932811774533277255627251591525680337416653414697852938946477765739575989782561041133771451257557157756072849234217247160968445068150218106127891386897699168070200218755068578136094949985380806928006246790329032200529105916916706533850553672076045608730359951,24113152339438360498818613385483602121911555739122745946787379178133957345957135620586264478203421944425299426192146461629084303328006516447630615633641891356240907180660156167532682435848933370915136668244592305335752238307655218128679169067763462102575980085156721937439825798887974559139719995948680828470417607776837167245694714142889348485597791698351034577938495332154328968099025912022930753095015877561713107591709857548795164690012791766454787725487399290632750389338230767552797412606609844617222343058516288469384643892784348204522341997782682670665258025662990169755315957866286658684293611644496873215267,23048127989879822710411192866890144848102725506107457207672066933390327615164057701868652098516421397166175276204189099923035751642625511125320886106285613893278788342927698548384268560900735111168363954600824026890037073968715675372129633119593307084369015870114545021114363768521678984746381386414166722200844864695581741219036038918650136132423598216731404838838590398569938445014697553573715959930243891120229359688175340044395042982004999256741864583061848148945179825358319553305735497035945950407010348447423433336328707080153581767979294379351950056937128181379551873194994067035954630194182060875682649437666,13618893464695086149676203128264379703835247962620883770951238013108147463339903484787069986025297587613907750851693587285998342458273645890621629308654871877706080796956646324471034007240766614380367007821000885398439611969420081154359024999574164769946112634981576459912811818772491470799900760145047753530968995478407930477477944129573287306569838212654312701822189291272987922653156057983889008935259264244527455188704827518079129994488508788103513618119832400499449348458232904888661877972105894911067928574676593878643851258312142433749927142945806711403413926146774157545099025460329680057003565864119710344042,23894029291617241391144328899509691451082120805949912944383938437120322549284785238294999166576087704069349411280857670919349460489513399500828536265895125463653495907166485758411354581066514943080277665731467417672021474933030712874768858153808012182457456133833868682464778542510979705494991241834256525297885337509013426009068419788422403698033836643374538850826433098217327104341285009528115639746062522009884356634868057714134080806096522631119686584895158882950387390079669636785522392222833493980203199840117132536258676406629318977553433626720193118379634005263005358473104730141003648560474105109737111011794,8925336938516965008397109104514048184046286665452569746388287155124102463448431342748346308295582163969585477123381674515410213967775651281608577967919981280923720344420733336038269189964575637162708585549385406099462739524026684819607311522399446887121322482655436562521377082292558533779186792041587188361186852658931953312216304602575717772394803653647861926317392730789837892117863267885605817028617970756887793540591824273228108598874261690153175536884068161483807477696239392976829822163308261960542651335245650622440817598987961098884462409657203750437907285145610244236094931259734945402603438305753971150592,11949666259971918796589430623190075546810486453882961593114781232790528357171489136086300172564872735213582648459678932324553671446193373613445392996846768949427585353892225809922873734606473958012848905522095066153323414491640379067553063059327565094898320425802881846169782611727703042073646692303198048486923691657532734229486488161759607766287874080676488615866925028524263799527274261471472615111756048644281578781133899646868101860588922113737985515123939591333283772116702698675273675787772365936701715064375893211337204849804346824788133348904362412793959284749560448461044309070434592388006426231060171764771,22250566339370324059402215781976249391077086920660167269541657986285216346026428267640441435642495757683689137264020871118649281135403445710476580606390835296225377720486579495200200373576733192798872047011357659910138900430140520045889539388154712432007987497852789128001047310532391671755193946030519165629053752937739899959567496721448943588557458516035029605073085115080892712303741049416122614132971525567297514147438256957998569093867126816514230762539072531021367441808139154778858187018499802649090111006001230394761758788797026721593274233504527845651968558769656875733771044784061166465882679811351871629592],"BigXj":[{"Coords":[107932666477475802631511202367582748861519739569035537904969017494701526323818,27810089900979531039053592509940878404833992140356119628629019981009106058899]},{"Coords":[70488850009775279003934303461546816167586319901288720095232797816893086714940,21365158033407193885213404713050228625397820553043856269267720323259910113340]},{"Coords":[96704419145309517259142970140495022508494287400107594467439362232020961329299,76628584944766298203991062873793502752240767184659143342509677627090500089962]},{"Coords":[28019161860991754547254544009397503028608838172584402384170752184470432984674,108882834276696603625351040619123218095898824500661874818668494090573839581587]},{"Coords":[69854419615803608419512220164651266075688659942948825382651503385261699188382,86209865999364219341605400066204025416938700532196803014526015416182305901566]},{"Coords":[55707469940275855599640808250448173151230633312005616373715718152006593734016,71581471827456608524472614862044126332419275513283203837579704443605501341979]},{"Coords":[31537542564214197931115404850756486671358385103785295421162883744455005249506,31003647934233069190792056145926504346119044635106496026002117518163562078840]},{"Coords":[71459743938853567115182393388387842195822211722537627655935266215390092032802,105621264392663357649957909617094860377111556629887291515711877643951632476111]},{"Coords":[100170179262204638729042299933877814060918019584852761639094198183345507736585,28900877763089774489040863107152228045173480683157331262486804734772631569442]},{"Coords":[3393930126761759176345687233491451168543634500428196687848693751772795262696,55773871461934232294712308387072487465508923595028614508001564000526922809830]},{"Coords":[35436174997161384450863357581481493940397620545951968086180770941965008242533,22941476771782647278770334144010957938195504420883358055133977993491797250976]},{"Coords":[20742591764203230819083960194719627433799141307841650214987882235851644570480,36792680781195360005281832466704518433303594582044389944698351592636972852101]},{"Coords":[78822613167932563650341174247543824338627391764838115664582901884987316485415,29305611808246076472515388603014476455888609363718621630903671994111327870746]},{"Coords":[106662917025753316359017201639970683777210765763056751174154469380644107823988,38376047705320523688829546978146661452201839032747402442602961204420046730181]},{"Coords":[50131378328647772110850225682895027165473791107252577081428683178756073747030,6484525664721285218064077598136507537588284647694850022336064622644441747313]},{"Coords":[63814576207919556970263190432671978386229401573575575774195362165468317841987,52351921007743438678847732376277019290979039258214198300788054101141627584484]},{"Coords":[33074537919982031116943260590723731125144796968052633499149040111855190089892,52462876494517613825042650703891412581466209764861573326649361336309483684004]},{"Coords":[46337244846970653814521818706394664913446423803670640514811670889644615970917,60622380590936530234720907025041106487069869976400399621024354043945489694205]},{"Coords":[68932201886808999446322681662607675293176822755681592496851252047161893154617,102558540543641758967834783938704783088913683989892796677072783324191846467831]},{"Coords":[47093684301174743530406169926797075725911173707597448168332637736184121729220,74517549523358620639964596401882412428175945976473031695393603496712918162101]}],"PaillierPKs":[{"N":22709559588116531632086995360614881758145847958604375585917706994116168375700793376291131544827864145364687259129107134734036373558516565338923959924703156876435469021413354399418993619174071015237246272863140297401272631661028437511282301913323857011886496541494453371682094558243513835287198378640755589750985308457641295136946180231598093936765306071278862423297167033582450972276390473663053961764398615170355333807856718875047329620163477731845253445115727590642190491372191245975524943279344261890117425706855830582201691939059698357650223528988243289388677629074389631868130733940366531485671699566601163615661},{"N":23443957150234287781524191819714980056334495753799141564738532515877512840928595615570444488815473106829833471979932833846134743028112638013245259429585839683894162551870479232892081727695293106142145837752188330564435054323350976552725925455074206192778580457152750035194725712966851385101176362564718763658489874740341398176203077931510475924742361380746164713522692182335455005818339528332609035897638651762193188267900136476551393608916669622907100712471489443414455950510417300576764177277906265582678299980344888299166427651633758323734973558749488731824311505669417847053850760848940423643750519510719400853833},{"N":22287028689259504755807149120904050002396020193634043129060485604472139332057712093383073269246020913354970143960065213561811698182428208504100112877284663913440710058603853492628849020664094889598583038642474751945815658301741607940280803922553940685657785019086609257141579057485855668397778602262577280637009340765489166395694519909332104264865369924039797553524566502151933416185073911748303993059047774791584591703105106437459703251723998725467328206119091524784524659754164199098692948259716816125731645175450298738430174307931086107554346505367596601043514472572775722114263120820933996056766066990263737006037},{"N":21778455942403717802437188616130445569467912356333711523204106321468333958250985526522676150458521139952234508699903096368286173136552336834061186195705878795885628080532376972447127537374960052755412900354192740274699607194495256559382391407619506149746521336051948176770581697936379025338953179299724284866217851767053361169462746892201032000776732741861429352495405542992367041691709412944529198233031428083828538853890568987466209820731450551650370292813109604532198408719181905952928419308306626664706489746484860069309396704199131581338218405332252354539932883923534658047809067343949198229794022084007329008301},{"N":29488834801717020514549557511738862835006604218586783270956635930974777840977382736818004943434492491272083417763033198615963445455042431681833978353867438176815774128330303688651059852719975859250721567522453513175104614385098138081209372251486732213899964978141377939387124226524201851559541320231331748973500724292675746395999336271645347092285737228923411234511145980962423027637945866866145915490526131803713409632083226573065035861386075817821231913413262072294132940186959486615122177174171466978866072639941945123654758187894442697758141328636666389957637295324259708835849664958476600091423260629670847006421},{"N":25268781854018641821625117526035412649921406362359871346957405856614663043063881662682001256500050697385215601589085313282671061645985003913281457834036290368462929918763869754871955608135979298238482437377851913552755913815405018774915484866488142406303297444296659799278477225336231564636195441498040062964451813900346208766721654100661710718867197194733579941984196715209521167970358227552984230489600141394198144474928084583860744656840175887777161454380202188440178263993042579519816969496156562013371732648143667185817225623397113488180419930136011024805515953457443050643425221010148081098971618629282508806153},{"N":24077030535873838147372990238338423111894661719881851208383511932936303788667059523325649062922462968249640702042151293306587810036594125879862518141403476609262478705296844024060273562609291573351215091787555942245982552314643486135981274381916357213038852978171063476276539384812002232533351978097782562939609101707149234139391638125337919614533689982228496010017193463462456934753130533077727108799001253943486336718218272844533405886783727956436625979626270665501149887064412642510585330023269746464208739229956710668053204092869919317416558618819105166451453240320574158658174090376334547079951345889147202424197},{"N":24121210025310295136286367465067731861316363403302816495348899075683542883649267862423504534408270521528934904000166037695519824119622953526124849500602533136680339478221010232315859804261374907195769559713293619918530079931895046819311703445607618111244570268187554380693098539122537784889700313005700764528116670706472264450599583329582635827622249925780628859318211609939169828662135675938640346560681426019582628979275573701346775265344080547061237809761964885298244705276139799178175782218409921284339726928435810584460742981474010807766522632224843035722465220411812727073796692626221078545796203402892726398073},{"N":26956782591324520026471701264974010002551430844929064558517606333109244333104364565707985261498791802440691867651722784210280888161145432103606824079477489895607158911928686613189674072708812330140444741131333062722881890279580684791181148664415766399323289281546841599984936640417820094077391333063403828290767644884268872176714175866593843027335088472731880830448148161449695591865312724115778446298294191846018327598860718546463796845910458753293225328770367785304521228332493000905274903063796918859478998380272311510096333363160486944174426731511854410356169028732110892177884127982236790065871058497952170624401},{"N":26249557760815986852034237905417683014048371748204856284575862917968310785883486514046189771449794410062311941320778404041317694258818896788913080156960590072834802977027251267292982532721343074208805165986815554608059680417209847673748867108719737464989377176319950884300513507127044766841349776517208994115342645229445634306184178062065483947743824551463650982111893910449653832587022792656303977671598375329018430362166017195461057586254287305421091325058340750141735758488815547176349755224428765382123772435956499576803085012124378000542928725389368171404677133866847871236251441021957443853014282022367009685861},{"N":29234737641692976595774236923019314216135921756073342884203680618120226690739166288052322806435356115092650761656136403373733697692050475566331202817414926309882834844059857181882811689758047525443057988160495074334079542319370840285641441603178202467820462588826229922786870937847036888109767951604636584098102615282750014508387427358079100450062680715472456836097388046216848854107984658532128468648705497171277133763535425127577293318939184956565230142817502839346792604559307183239212332206857888330805061669830296766718735240517983609617995793272006065303892130080909658027060291496416496673503247698087863812741},{"N":23656386949781378983561509210223997485938600678969404520355733863050336777307520388106184053630795530040934267843013912848246799628076757878172461266778291537251825140340096706161543161977283845709058224884977213986434571463756330276479208682952096086332163009127424608568458165322976353036562065434426650045708578336603634894217912009997772105108262453019882143577371634194078714264992380438885990335741008955488808069468796086801023973076920357953123958081822096146124559004458043648352764252390085772923647155984579633692639191141425745475545839873632550694666801559519849238477058285069280151324843991596401646381},{"N":23799985430892428550287426639163393896421663100337917557737015159273107046495772196531619480943457572757018895004491581880198797117841320493538657520011738472038586707181276745476787089472101888983238214242261897466709975139313526918983914349699164310009561585851364405464439780111046692215844366708075439030620693316351016954915727063684631173044817825576871464988585229583331260702104268887569088888141481975510438061934915565917441018736997897082388887244599485050548831301667982348795441755679549415459512278548728977097478254566801983960996625453970296380670902503277224729081061542066926552900097298958795919921},{"N":23398981485141581657111580810187356464859260220476400872431878471724619284703169207796437272649895475435460945312990810473873577007856956495840504596329080928974891464665270653430872926713471055976901497303072174459471872022720981442223753911960555794844008812776454183058593769792366230853507105586338576934054995838272457499054915439455088496111012971850904735289245691042597216634196809202787360353382667100073960437339209464655220130141692780283364216457426778903461083049390591667885095066567970867147659207581183606534554025283663685502553767113396678790806758816850832944906936477595076662914396730813902861273},{"N":24645804484208008107774215519843481629641338685651268289287772114412526440944111199969614165736177320304962312701073205538949325003439610780511806547845684862319242490345551374064725883323450769869814834613757570218276860284970150303912936880248283750218053176729988470901025014948637258535944241625099061769802348376561541469733700398108049774899180411488580995483844861534070436865153589414051441506488195269353530135159150725450897767102214976100194473384482425657735122085724544900424323758582364844065404991831422328546732900258700279735848044809564185617079126240413557300335393565946088211107690073344594774029},{"N":23664465666512928010084076006211208070039097235865486451752383277009646489200010451773766854885315852604650109050180997494686499532996982524560956955784208153283884502900612829692080614937231941501430129101050170848135543483642879522140453631883679490750446245717832265221232589489474380464199065201167874127465810334527670252907568617820949350516778153996202871756067806159248004814563340677682071536108582393686279672503548392243690499337315202892692273695083478754736347613219568092769421161385508903701795824994052294039246344316342377047969959511601521901736714883097032290625287691937066549723767146291790114657},{"N":22165609813091667259068375406991183583538522584875908765309739098448534648989953434651686788146626220283972510122914357995219529654582068510398362007031593307847827533082059785375352080923687640731375327188268078188971415753864060723639564145551626769223269559344648109409611860616931934210627553354435590764505138165455042290624193631088250055962033560484870481238850988856340320616852463026890656813658017413542014132396994215496811530247375977104307808133564653689276479112825279061966541271092780066027501498091088819663615972345385914896991989394778860649710938578818683661928070093400675043514978345177529652389},{"N":24352137164919775060505902875895344669551891343219870713119659495462675754712808458066602996522267529841963340495194383402601416044030073771848283771276922546693343786778909195920195728052430645791682092298169597213540403251589258864324656830830912032021695409682689693414793104678019843226941004344886835923010707685858497420014814885662783481710790760565625597934856999445792014460533464855807508832344902590088930105318969772303090927340774137226985715726042801943592444113021856673268564036683304420372700405680896320106848396385562893886698977710031223312091933030330629827691164100994176634674536649129152931477},{"N":24388425323514301995345880181969195093222141730097776998750148283180811486102209130079655780738706237274584643472954914248041737365215477795339570700387683883122567928523036945799350046333477704674538444513982433086664207664876244841911099162128315338715496189423824903190803189243082722638413039421880070666657272413079871744422617706188003161639646693501252928939859937588136677607569634910081471599993513483449765647227570734163189729311880395414909879933139619835138785852476313690881562300854512419432999005203281002911021482679309149225773391703345476483158302622073477221903694296256566718995262186459619480089},{"N":21604728584405813409256303272593334134333518895675489098410576803850613670962405878762275711641486977471395420657043551402890823783906820971712770494973201278527635005537714974340519544361402189093858595896231890523544098157276831993549216761475195055251372273062282101577640320665049775934814411518181030603401788639796770568692007642464803606076672769360069701571162199680486773757848273630254180550410784187377722267755203781450486589090106764541644204842436002216866597611146281471192249537747681020939314396157603364418120170135828923470079746789793341042476885118587449440114091973976013051496269141578521399429}],"ECDSAPub":{"Coords":[82191134404558877049244897640959846424169542769967270904890689024123037541855,102677683688073592669768840687667774566029618427936181452214529135934890152533]}} \ No newline at end of file diff --git a/test/_fixtures/keygen_data_4.json b/test/_fixtures/keygen_data_4.json deleted file mode 100644 index e44dd0b1..00000000 --- a/test/_fixtures/keygen_data_4.json +++ /dev/null @@ -1 +0,0 @@ -{"PaillierSK":{"N":29488834801717020514549557511738862835006604218586783270956635930974777840977382736818004943434492491272083417763033198615963445455042431681833978353867438176815774128330303688651059852719975859250721567522453513175104614385098138081209372251486732213899964978141377939387124226524201851559541320231331748973500724292675746395999336271645347092285737228923411234511145980962423027637945866866145915490526131803713409632083226573065035861386075817821231913413262072294132940186959486615122177174171466978866072639941945123654758187894442697758141328636666389957637295324259708835849664958476600091423260629670847006421,"LambdaN":14744417400858510257274778755869431417503302109293391635478317965487388920488691368409002471717246245636041708881516599307981722727521215840916989176933719088407887064165151844325529926359987929625360783761226756587552307192549069040604686125743366106949982489070688969693562113262100925779770660115665874486578498988764851881240015684393252076782193040545145314176821543701163784453768843917932432993165927854003371740768295437427523973591672393065240985952514664427783392831889297288252833444409045531001149943261430691787402190750737017696785485615816367169265808418059574166482580961520395718309207066559043072566,"PhiN":29488834801717020514549557511738862835006604218586783270956635930974777840977382736818004943434492491272083417763033198615963445455042431681833978353867438176815774128330303688651059852719975859250721567522453513175104614385098138081209372251486732213899964978141377939387124226524201851559541320231331748973156997977529703762480031368786504153564386081090290628353643087402327568907537687835864865986331855708006743481536590874855047947183344786130481971905029328855566785663778594576505666888818091062002299886522861383574804381501474035393570971231632734338531616836119148332965161923040791436618414133118086145132},"NTildei":29849885402332341621158797110436829396646924395042456662853244309209629024048299162272105169817115314715561658954210859089958590864101117136365470947498907594068557026997249170993874294161892140147876022164668279854630146959174794473879294364568105935870579392660025720467645329300426773479121856766502569984218591054914763859996476236063750210092775547343099066989888106146219058807079888624162205626100491953381078296178689026680702514982189001052448223393538379392778307314168895065497502603308074595916000270844935723623383768691838356870704054233137068509668072099435779943491520206735659166266930856700483211181,"H1i":15798786414829945409990379475347092437191933825852017565866427461531342919124334651290935627606571949258216191049074056902849155877229528326934734579833314251986756112086465450838437292200045064209850028597082873902388658379469441564667669701765841537160309665720024332706155566138689213961078587239980763899119769146527020365437175547591597253422987241897416697834718145603044863506510817025716990741255205962477142190641478116356939618991137525950385435749637759382858607750867147376236491183474725313362128439752969796168290272602393139910089130691220986679844969299810559606706770072567820176650336982258175656069,"H2i":11392712315645310673556256100365181042182208368042016535682634838624439633464280578340353342992697843456486856323709208993769929825667198124843256857854149171724638555790573818365215224736100981973384410995558183533272266822358013891089919574254939818330873527463833155579817319890250882056946018928950519405481352273564274138745239339555689528027209630484474043328702633331977168775903350557929023233359205813047128230741363083482041365845075249319178793999005856778680811779083784522911420519825713738930903604514930432327435755406403484491228343075922083298289929463367612180095879814334515830338256256962304365507,"Alpha":21576358997812782479537663292654796252057629613018653178073878140312970584413863869156922767040346752950744968552710492734521345984417742867009332739677783279387020585823001702498908583079736630537862459279239744176256108612461830291268985704718131898217254470866664503141729728897082579191254960019821208620342838975798833021911390053937230776734063563625922290003576513143228833348486913256961023745950783142336278996307993552668327464606437425638324493464273497915822225341014517263819013310622094782697095397779383790021854997768419707172295960350875294116130986721419107536591966227496809658564611993454401113043,"Beta":7299324071035667906813750904939800686059852305706815501421400536429069345066938579777788619792554475819043913842519160183089910959934770149167802511806048836405708777015327247916384980812244755455545708980714860773379547054756723289844736572176651711315233369532682220293367252867492149568481048604397005580154350590392436314938299213432157654213210284226709322513784415059305183790255624681764225615060307094606892987980452667397707534363198819881036031232419146541886152585318112550492768353399499683075694051560496285404485499905055009152562616897350567971256621038794985732153047926898049881492973831407236216959,"P":88890531467658879710544881410363185332742627749091244420100160281683814559540892446051560310470443213801484017282604934439015227295842490284189611311859299756792381945278035165121570713624352890161040166862430069367362713525373359543782056576735143467406878245425723330298145168569419910229974158555772170529,"Q":83951251357948770099404826067554120572458276197327794202102129793440063614985471258798554117352018850874620579448014152471145691766072279132603176250486051584826516610261814996376651693413262235750960990362985006903656654281029874092125623403121227787057264397676723728863955661061205110301059878132273184679,"Xi":111144055324389055712793096957922711365408089614436592572402661176946554050918,"ShareID":70024534756929667616115849317753032895580033020239899587896153938577578972753,"Ks":[70024534756929667616115849317753032895580033020239899587896153938577578972749,70024534756929667616115849317753032895580033020239899587896153938577578972750,70024534756929667616115849317753032895580033020239899587896153938577578972751,70024534756929667616115849317753032895580033020239899587896153938577578972752,70024534756929667616115849317753032895580033020239899587896153938577578972753,70024534756929667616115849317753032895580033020239899587896153938577578972754,70024534756929667616115849317753032895580033020239899587896153938577578972755,70024534756929667616115849317753032895580033020239899587896153938577578972756,70024534756929667616115849317753032895580033020239899587896153938577578972757,70024534756929667616115849317753032895580033020239899587896153938577578972758,70024534756929667616115849317753032895580033020239899587896153938577578972759,70024534756929667616115849317753032895580033020239899587896153938577578972760,70024534756929667616115849317753032895580033020239899587896153938577578972761,70024534756929667616115849317753032895580033020239899587896153938577578972762,70024534756929667616115849317753032895580033020239899587896153938577578972763,70024534756929667616115849317753032895580033020239899587896153938577578972764,70024534756929667616115849317753032895580033020239899587896153938577578972765,70024534756929667616115849317753032895580033020239899587896153938577578972766,70024534756929667616115849317753032895580033020239899587896153938577578972767,70024534756929667616115849317753032895580033020239899587896153938577578972768],"NTildej":[24366917239515824974480442558600034492208859976504581465004349103795399783288421050831073024860369440303795551299953821996018530997630686285237603133194573622718124597460737572013930327249120648302190449742363261573076443183981343509885970573178298207488759436277685910850783372123719807298277837194569211839837465137044422691734879346883675317045008891659749391963717253895556693016508386391015178130161988317310806894350108084212611277788190739249760699147435109968242744158314817905689533615803297627887736048945645075792686416602832677541152918424023805280241226851534199867283487943291927564365275467582581271053,24760645214372673899925400730945520473062951341429554908754617530444794660401836428698520741646966955149111758288194803110363170964340801072472223878272430220722034553855593944561986134993071918255771235073978495918874383067260043443905506152815841034811512510858407909698555608803009379935760654878372301870950275270724586431009354962811874333750886958869738872804882633350285507993032763679234057221556156642769183354423672540429587887851343483914923600996425040023829456198369968692844034517720322057627565080062766276792221145223750390964637842847390939964073972850018793739320669513533403812272268817559996728177,24335507174653830446370401218472354012341984065893977351232759664219171991998539382418393419142907217562914494098827810315198583692551476438232634594991137003295122745831430159532586451010818106345725278793436836406022036374386618877645773128457664942790386603953998246404350465143928182109615440037926218085391564421745517307996722808502413850991173460229650178023548969664557299385141472097112836353938598657235574893430259143862369227601052831476146199261368117297723539373329843815951236997008000605506966102265798289158763516254914284024816124992986001907541315389832578466014006010753144367487203071067653140017,25353120959776139123294155818546513426444543204238814947681743626639583989194265533184090862296087842527526282860965927846515276605818147773016966742984780344247645856238734726222917730082852005118152200740071409410429096265046046476115230269737050878141459099734884888260830179970728221214610731604157017545322535971152193773221758709395769765431078738204491094323008301356895841037132747444047830530409305765562694358003007195242702308043142399969256485870876259711230128209178441443167004632638027691911658424285106297785382963002590496015895572427776988235599297735903480964253948429971597628412447354914215359401,29849885402332341621158797110436829396646924395042456662853244309209629024048299162272105169817115314715561658954210859089958590864101117136365470947498907594068557026997249170993874294161892140147876022164668279854630146959174794473879294364568105935870579392660025720467645329300426773479121856766502569984218591054914763859996476236063750210092775547343099066989888106146219058807079888624162205626100491953381078296178689026680702514982189001052448223393538379392778307314168895065497502603308074595916000270844935723623383768691838356870704054233137068509668072099435779943491520206735659166266930856700483211181,24303346306264095483727907643814355785838936488512300414348142784703917728792656928355740144163123550572150171398192480623395181408570425672723511597546032812698562984141032629389936754449924613948711482870260420456913877526422469201798411517711928654451945040790337077196569240216228957228264615761147375423719114756511538399142649755527243797217920772594702713281103939163745422429156605226253637010451757984598979666631182977221341184990723224510127460146263007980086670575857365789365543477249518437176817144448210584125518855115672157465775432933601089465408090382773104140011964681476656187299047937685144419517,22663176204438991528847068755997123453980704364589354833944958947785385672266299429364336994892902925142195136026995771544990684289261678272550855925683439714148609523477977179010696117909805695701859018966669150739407573082987363056991238107146673103957237104655136409343763639221993038484198677605284199701204669351878989982962102150055730219424526668206392140254467740757469800556697236694088468633665970603098311956910105499246381935436511205439918717236853087415401432056630404175846159692661637004967185601880460514710913037913825633119857629058574151126418040291146967097319384900092639447317903904481362864461,22214406206988221120543596573138808869312423548073528052574227838235500966558488375856182495656208729058219131190228351185002058116343873479198633895772314072671413818939926736318457089940649635331152484030046857163634723835906012553106874988855844579826872824922610248380139635284283310239564378546105159549071234915504686574306652852285495484227675227079507874801353534124836509674143920296971261218965184384289987323806590503991373066703353411925035343072343417173322682200148341574699074894310006001608609036165489022667366737175975429277190015768847957906950063130121905159960720849686267420829596753652148430921,26992054981062895613627607261766199835432715284801801749398907129229048796737348701447929605174559094984645968238323112325575430714478210726667128296579144479334211667227791506349731191531989884599385537951555136889431648507040431760656554949203843341649040209953028348323032563665739842658324687215759862340780391326904566525914822596715715051383829453805370490781186878600411802395931887164480044180689343432959074712196207660797594065685195126347713904229309636698471250350144098081500570797555478540127343168177689831999672573508345263924360426808488416307292793876390765153143370885661040432948994217496537757037,26883601429347938201866566412436359463282736845136879263977010812101340295160083165177085686402734295128738223195845941394861534416081222492334460738589328436684156816061652087254848610272225814333318089300032442695939753398569200283276971829978683842747584203047240258517693679059389343721225356421724973291878661622168915849085533925700422984364421907650824486413330797840743205222070155228532990351439410717713883609930796830287062705670943579996135308824473851899048361474382520461452309816639861239026761274994745411785747289015653392872405877863169928875880404134872170564729075194783267248873823339090853461089,26675898204441883357756938810501612911006923314113656530850642169244358619346060171584915468088311545710004060513299980257359925141562861692364285790755062927815783069742814310907363159744172010043214941961935176791603921250085454102936917126214113873120405883118273636844903335000473865105148550590214462929117780405311499444885924770449779157142014006830224170685309315154438797997384633339817640551850145502452900467824909085498261391267709054450200313476628713250795473832792093350711410373115197160491274663551092524073340836221397352664353235247831158949819050115215290772010284539607969271690219902603821582657,24003425727589170532663869192322030538943945148822062399216337010945961427378027710524236529045097740008239529891693854573603730323074574387306355517555029571396270483790272731994105657673718134894396083438028861748333502807033025075738141563799251049728691667635160338770958887288469952328987442729682278796947289053518986771911122562542149441355230810099948748099507142060010177281487688268845292432759376770532767245812643377347484905682286529844081415426101824234408564247618590677966518836555327692461478356122297916534505785216531638872958168430321684571355170353352724268927780693184938724886624339722183259421,20030939948791694094921106997836532434578994294403521371501479100010836848962747077471607238761388497679145378822499150459403963802326636975589780084279335637070321781313502047027883154267014733038805978970710176410579107929485519779112034850622531520287022547371539439386174878773544830750041302618611105173361798826270784808992652396596786821436733488377837349284332001375201088424331364286550732742247150161681889289004480841207149941594126907534285607712061943572341899739867922754683103581617612214747009636033814762750497302268078808823665919929249386647148964298452596399586628310864464196272071720395192133489,26870132374951553243581913321377246229771795848056596419360924847337540300978229013002723427615100062690126686631934134732102152941473371391783556453709425066357685692036492637888980565254013131275256724381428020710512422112788440607830591932440438849890272166273212125255293837259298348084558313308788645038416611482549103781514142985867750527012906984385110191046837459757808864741583473057341019452578423080700589131792924736182910584032669431737863108910781465411300404077532371983623221078943741087750842713540302692591604785862604978245628364756611702919842339423052849035969584933072813435912401288087398604921,25781309885353513172762417920559862373653633766198016154431702305819993747433843312735651525316421555779956949217599915608247344211910767561492880228357017663462131839160610108626231391786518524635537763772771732022138542377442385539024671393136972077400774477946909998449518641822004119697621239956294809097040644518494643152713366295240127317300380586618659118989790014789381034410565903140125870883802621234783419468923863900036725871332435066935174631607488613764393382263135690909855298574769132391272005233712859895795189174927584736869111985784832037628893972777670733794612566699959726190117505644366934694141,31307948529511772422092081620376528723351660195178245630091738647550584183808045529448767036136429258045017880313805169530174754560039519751935200016137594525166410173049351154227454247975670642857061354284229524586536451868860885813714578893448403685065908393856455188372709054731049692863370865677701391460552630927498629863324809550335559817235997586126538332699529118621351625401581293898546298753212618743290610874832103267345624474884402930254336353399762494911879332332316505133643206864735435683656288655072941785814640312959405902536938955107787448304325831133755028455554235924936888965889253927315459519249,31466961232199038206393986199348595708256863299176374148227521484010795684260339468184532260347996789772040097386032241172658309499404470468218492541809815234208995118730337303514831281668817831605535229415260143432704661750281094187807328676322407373913844432440683972812394664524853699586055958635280164067281091412249301309251915772998531080870705450343112678791059297982033179252277552572737658097615320288170699408198262523087724946180097295208523307748556241283633289461565623961341136472687878275672606572269060361808996126027608464429012339688636176786148346418213288770613540923635302757146988963110333316781,23282315206683722596094270562333648753439051790898100314922005841725502497093211800334393760989042727597691714582193235713639238284172358062468387217727181092939568556559834956352385929118617242221861532950969685568622107078283773942779583910577282365015752267710687089071780861330758005577221151609134583129504364837341221471368611555190375227501319216183854908348755278500330379812379883892909358375120467449644585220805660246421673078936109889143381498767668445860590513918867961598096050612727306953235332046855083649560662539716078578551485777683734466740521988744140757231408246451261769915726695959921765032997,25091337650425677853684475917739333556784369056148930585749057080859640921803414967035499248336819782755466354804640016025044002503128223804670636762370700960312352761126598625504662989187540799606658080278007629478214427447535566556662347722562243890754037326739900472696108231869156013516647618154210840364364919089100138905499001603568088340085110153219085814807927945152975657929969505495173887189020701090313994816079981109190512102678874334588894915787220152560380696231794377692004958328931143825599595181025003997691503128188855105160353707735893011124272774335559316106266020514461879401833904958202494061001,23827659784682250604442454473547796888740733968924087692522596947210995569582513002946432005898923676155984614087332560259943866897650716815951119740918614656692843602108809220144973266843900928325168304104193270024169252614460073574472494366384192690720704949267653372513388389564250659367518167586555169618994627094576635848093242114762843534765611200879960614166650643590955853799316870443339993391685970472310294098785089036360647811365521892090305001153074254408707786436158648387047030717269669710808288303673434511182840032065481730245714970751088620360458026112893074508503440200554493648329036195258926190733],"H1j":[10024025457847388392610646066298514243370787348338532750631360639913721829629888261433439914402718667116400994500512300775136069581637894623537510481269716297031115527602912311323880048384727148486222115704187210174101029381357780998875764924841198846224052749406474209451141960414618133437662859572202780961023516801781475926753784006105642819239485607653090319392184244933555747381471676665633830261574288841173438644814600240117247473386184548108338325639763390271130259071021112922069642676901166841167199223435257080313456925802886649375691201308332777566495693037805296244451983094124223174758130752134991251259,5540062908155010932513159905564312164946355979316528931149460136278288806659772940588319017326328094974853633874382463976169195549392127817304835111543615409573476314059060881338397061412436243810139473181382772109210271463439624149555390649740374635589527762045108740275882849527695527198385706268316952416235237543464363519203592980469637771074904708426157233888490918907104014536294284692202685017252106362206847500376336741712522098586355602155374318553270307953934712780754034315941245597336144803859821983984428471938659224631751193248483706020880124594451403191977963618445462632103562894369717754678411970157,7294264017980791887588541945948527964732046841763268733085682296431903566128312881527716171471646888128877802321111011007465120561544014131687975703500639986893207003039277321438260744935109724584373350656877837682253991859961109267518971621013884413991023503512551591742311046398421527897782104779903020623974791981836764750802585775470044046719785755322826006147242995196401054126149520747563133877218253475355114168420889541015916952420416242677374123641966631897855997275959219115766326404348502491490713975699304986526310844436386187304302850704361098476666746013218735172029033252239873173053183420490728457969,9501218113444747046512167891740890620022448184208745016727575118910400114702536042272711158066289559244823855716406559728787015762712355980741317225927051706399078523944764818407725281098361563758658548109686452917704268397282493394145905917631338144130662786869889947744035847462163212831976185178442327943506290185820473986106267053867388409405767987475830498385924106417897644176202343305711004215516685101951487059182051580662118563531777396290757514364141633090265347173402382594862836539162320425532069699769291364183133350523773491418365804493761877536170212947415911627316964969637971056063543234131063060179,15798786414829945409990379475347092437191933825852017565866427461531342919124334651290935627606571949258216191049074056902849155877229528326934734579833314251986756112086465450838437292200045064209850028597082873902388658379469441564667669701765841537160309665720024332706155566138689213961078587239980763899119769146527020365437175547591597253422987241897416697834718145603044863506510817025716990741255205962477142190641478116356939618991137525950385435749637759382858607750867147376236491183474725313362128439752969796168290272602393139910089130691220986679844969299810559606706770072567820176650336982258175656069,9335293725151276608993402038690349490322365392613976918346481216796454921531989892317554215286413208524498017721329770260220214739976276463115767516661469141467987234112799014449837377419827917305931640946522287484467505347102693011074644574833321939291182991369361351550845549986196632347752029739003400876962371840702829213086378506709453044627207644282674209652698873675164479665879605315024759424379670463637654094152277916485019222649587458037242630015801094579916767996040360006216068355347853880839844214694922100092515535187976540400673364286904799817798092386690711558542096052961324458158162316849747049802,11928753658530568234030789407795275088740952723187227006977773559909074576164921817701724786519460916583196165018163510774039491890001017299531322520325627826211812869166690445989428530376091680807701566180854522056382923625327483414081231404244458202347765643506681512770879868073522880161513490523543914681148241833246281106290736532685240004675518845019764469048182810211653160870255293592651339935498048137995182398802459841631852186888112285076188858851763824315081771524248572039785549974159773606819792419731561145595921289694471859455550756883293661073453125644271107011011223441502328961618975292599286540534,3281434421303304451534752490245528887879239197847942017450979313729063086003376295872507109217827492860554007309921835555072782997029442232019030164252143769859146809734506916627953872016140383116721175515392391691229687480990552997729334078523811275423771755788388400181281035140972235710503768780977567025805917901565574387698038208089499892809008311004708551092635216129712077377038639345772519472468677180077197280667928734700336917165150723117546746441573171713790905181182966896063824517476166929486302044010896828146903022644169171194514314475627079949830761751962833520028060036397259454122764395181619471620,26798335028033483015595995885818313899416775173626251303214746152969095667991567148306665607431284548931904800914249634868412622200397325111043206330920355980127737464934048444736064518743501106031852408038680600709174828761299003903687195970226223339349891916494477088540593890862438659139800883091968208023580402075789145180476758769233643214633776274238005081673345069570155874633220460290011162900873068065044353387042255376321331197145839355270876626896209116281706932058419419985043694684968787877580180579063249938562059688827441196772120556845945709093021801017783532024267437712559776698525435075445312453530,24379152218258906482492311550879222904032299657142525355457269472724266562417862087603238266608926068245433152992105088073531452805187189356790567435332219230651301413762858849116755355885877930185483851669316692179467165059725168458003778120562044911094551614016767541895327106348965256725682881898632251239010971342586248735804355885933092854432575702106523584026168029150861398417670162335859972289331761535391135324650197244391340985538289280848512779115086784546807731473605687728417756436783747883720385660475468617431753857425268742613699673867257484976547014884809737803594445736805689004998882232608324939099,13639308363088689304499602606006748747737150113207488794697369879342136632158898637529348398215211110838650184450613858330095458701807309615170814350482223259077017423473614957663630359321153124867291328161758174033028972972743424022771180662104664036306205285576270109455984955077713540350117086087967860191108122028954920957836754439818988959156002918996099715859267715547983808966864149367592758343569651869960032231333418638792990340363087590766121964019626938526976202582697949104351928836667810574924696014475214582129919944765647849262874087078594478919124600690586319504349329877883243753775251538124197406468,20806324398112704184576243642308446225385834167758222047710915865491553221121456559290405385050181445190026351137186843498701962906728774890279265822922302262674344261443633266351787522423584433088856438680222017039801221837510594012303704942258177163584539612102842678739854493210477613035711103258550560273478479277362352841578985334600196007452719273341052878795457240578018430753780869150598290734861026318283861569123861098217259089119729724503263571923384603566241538064572968952230647186501970761685868678332574820155746476145383468962025352911125509572618602029024652380792594855032573631797517407433780124767,2984534567830588608251691688517562019886934976940239944296177755224193834812017598586976214786265618202828155437088641819872658344085523203617440122990791586663797768559098311449463943487720199704106941788760276946864277974792415345700942642550277726023952217616537482804161899962996481893200668973584167349538844293867619144628567178172496162265433563681342772983054368775009029385174850706677287569940753312983986212778939947598815595002848721076684937312652495527309505744053588382568512842786184034878250903582357463020880854201625144449160004603244837252628379531756302498757122746553391615927560808029960266625,19681285575282653686371866964026575635551812532880664611876190222601081859688141586553347439412758942096084877111883472375168961225184324383968489352875717670106440217006572540605411871630725641391171380023993395232691314662393923848318294382993540810449491616527524662991307157899373490742858664974644838212306475173795164847929404327886006104677091872987173592834296913553225843321065615965897920646645086083927169011172363123935140462214285019059726271437492418936191962060610764641005376370506280067258828239222704103600176916708092576268163001234852617058752894380793333304339677721072271552272594404600260363861,17663259858420311330651766819499911841067663794994694318257191199872170158137865025958007148817857781638492835306514771303332749042829120815317355608633338052028835394702531720709875380635913577846095483312528431723891955957026638053673584169905737554185634030129649039016018518994356839547241764882921390944931575304729587593422442361903863687010228628846862342208853396044641495867576785861723973159597871732538239253298128840563941065388954934551651787261972744712209405583851147359110032083949020208533161960188954813739180009449972293158373021060141688387818302891372350131649013502869609299334048318236045598871,5298970575809274629438935393989318057761764519542767586120836445032263316761487525811021815951911099884013107458570792999455520743412617129043815044943875968069243444902286481323598638834526377417104328855033745156522241109248831526582827196555064828920153555458318257230359794631019067306886747836486535385255549193636393132450664433886493509087281083390290568729201571601929480774638279112348846248022706481056446460853658284203145411150560753280109970030570227674159359532427547564201906120131477615407933400264643596572008335881981150704968737407428485573362254058660832170694074403410494545950595818012264895776,15913403370317249903846545253264583237445426368566054050873204733344285093615027647693061965382356514660489490017289737470216855339451599323161686141225364898734459213317143215419647354792387760477998230133600223913390244574171627679693591136928514907378143973333998319592583595882555481681002615976566590485876365765518571760268938260544608828017208378436062792581980653043467844284389159435925884731521336805223809049222649874552372676573497110509098941429212961378401761184902390250234585999298135037647853709390803265128558710383431672409386841314821848625953345836234945114508861921890833145094378447829164485787,2290909140884019351426250008814545735225813230804981825833168241438120125584365814035371010990772186759925886882837107545743421629040643022748869446583860483172598682089887676740059939878553272595424436357723367398096377972698494175572434136161599049698027302739164581483237687791238697379241703838109655701932792883820617202754352159209515775921392841098109717647668579384288444138762640166641466203925793570935398566304261495839675905915184706531257340555764797653386663178215604213661066377035729358506114543600757612373813217341582075351741934166661911856401287953329256496263459473595206461438549716253839581620,16642615813361835581230500131246118445590603247887791817817316273244438476256311337001611675388574331977410141699297630317377151836311293305027088331310025109780248001730816502531361314291505497281231329646213545390817348454790771602982974763540004526670479533111992035177312072478629306988622806347623090425003234077873805375141062348645927401285345899503907001825760439541705306585854742931882134500925066002906885338189163552908934604616236359806104007315451823167682352183241953279551520079950202231330492255621315016646701261669501844925563045252616708085163536257987840050252877140816998011230187115088535718084,16010347999096675182232092054526583890655342476048555695134478148077646319292254202928857709848426726687922101503995183630866920756294444357812738165670087524526688577215556076807546011943089084967115014780281986236650136100212790809186133722139336439667178800133917927993914606420172087843235000579778849526996068548810587854703520128067422195406060143205277668392537421614569464766336104310955572146529110182880365088792241394086157577886083440548786679580400292545275535505024808973895871707731827445166453079771165377996477241584002682623055073167645192536278061988188027824852844065261608054572024963829903461213],"H2j":[3368171208877966911054339907901878144315427177489764716664525147952589494997571345476952466465636584372230416806643927079294770772639785886747559841089671070120102511739419185926825275343129268693107584218806327021288882477748577914215697371729166784288283440868236399459954587383445757960644874348547417850473459042890356424271874499317095341286743556259239705095932387025485711185437452734962326711790258196775033662070121656155183933539103178989257156247756946175745703344908852193344259286268186560067884170926994359970521939453852919421341990972981960061011629945378288288327928173529860414633963687461741921536,21571995110918784658914871089233085747498481392093921476006031602493786671249981878215451382962183306832489322303548281716296137774931836883062638257871799588636736223841397596603236825079859053119441636830060533162035824030490541191082185733831191460351456499274515867869223195196735738841516139421749973183291711819985317821732516820314960505801684638233368245136026792456696584282458766742520555425925807015416047178765452538113430822668214923191463369535833443605844329620997852520039896259519774630621573507729397714725431894641714478634392952187074508209560077240054333035743202911738795412331854359778973195140,14361846248841354239738429614485615020817620015740214377557182447187161532145777460980697522328331383902906916852306307688790083451608130261350491455026208295552005757157547049806867066926847972162187184750531821995727255016828133897770613409484181886065535775699953909464798003780913388918153183011660224430464726560354626850573087079518001579497098985920611294338802921392907919446517107741456227975646401634963060678572780580998274987217038988195161229432595476488751730989311796958677066257365863948226172977171594831544011639884849989931328654207271418544321580100757601201270000125579606365984683036050427736901,3320303882237934822574723730249906877625782534310160672723504685750059065549780868692191634937564489497907122877469551544554741543440051593275714064385262048169355745443620314041833050794531307335253819559894664711581948933864857312882072901440293913927021712377972600011615454373450050526995352982830050256391443830850515525775497974669346917338799122924286263331475349263163070978610950486766234107397409979634217974050928014066919223534136219934067215088896161064759214148618049130963680983012705398939807692207987093138939884157043400363128971664499276483693036909962979142844998423058170845192989653278227244556,11392712315645310673556256100365181042182208368042016535682634838624439633464280578340353342992697843456486856323709208993769929825667198124843256857854149171724638555790573818365215224736100981973384410995558183533272266822358013891089919574254939818330873527463833155579817319890250882056946018928950519405481352273564274138745239339555689528027209630484474043328702633331977168775903350557929023233359205813047128230741363083482041365845075249319178793999005856778680811779083784522911420519825713738930903604514930432327435755406403484491228343075922083298289929463367612180095879814334515830338256256962304365507,16128185768089596194287119128971616467728481679140585100708821051566471323843047828854183726318833284371487280925375797724567335316422823058316454263458054143106806709907496680547056853651764349462358556329487313360470751830659004515085115085503406434144518308588359624087795942838829972724870214686385899497790143468039433972576851570857473482249444251166188717970319339154993972583107254198134043017660882069243167380269891894037618164535745069845632928065376946760432598515015966819900477155552863106379035709861023910264232532374352692943776001019180723682584987138149276551856921296644229421379331608912433891787,2216711622729147643119351601279604576561222476671706440839914460051282496368367881534683081378746937805707571316950268212663028051018612966825594397873907399847514954700788018713085783872783310865267981225782070802491186153117333152717062661110252994273036185050571252614763467112197381544773361260703440205625252670499456016034457927577251901944688698835868136916669160283880144324751412122403729270589464975875662168775295336481672192780137765587777958466322897160031233145485380452023766308429956773283861365366429753738225270634870302712702783980696520536919562785018253963272279772947237341901826167911636277398,14567981249611770119460797088791616882610277285940857160650608249425344206528691122331543913667869847178068077135905754757970717904714688019328854767805335556395966314263235325078374161755665460346725642944725762703818596015903905714083108502634334495870792846224658572820537006327415243377500340330706127007814008821793048336577227035431648149947100606065474813247441707074217050761365292856644845629066245995828609114930249956124849463230151850823327413055370077318181578457937246716760725440912216906628033172873929155794447444347775998977195569636526530564164070920144286322379557192066768871877841501668738723305,11562467842115790891804601373773643847126621903349499609152938962148770984937205728801191644445725158989276699296504193090664088648177394705510081647868491010141118677836328015755807190340752111789458182176683494843129204876774659319228937425442946958815453444622877125277511242659189800732695804577042735408856749044867603169231506434230337165888447884043777386886336176295745762185799165141571995448994795987563473269027183930075484844146542824749783851152327060411300732221330038342605240436682988238960554043191119742665518743299119772957848539797927531910599793668616983919654530567233469044356313491217598173963,14001988942247671750781482079375285966547579414294794319094213847379686940578167330959958747320137628734714588973465688779508774703004652572462868416321674738451567199004872420641775754108356291951642382728451341563463073268234897512437292991864411475522021623042299363078178084134670414407763213420631947305174457007699331702204294303015464925310244650403343929391594959891748515738314022772251420423895070351394216428634037166244804545860754313566530581379130190514697248618490807663014153146208137639940027271688234812971813570187637013722635079779830294526604514749212529717398437104564243590356265592707324430248,22660381208680529934440965587759859630365737502029115748369924654698991903261875827625444059798716389150600717053198039271991446052177985348107490095372700835812383361394955848974961135498980301472468398590372824927166661721168913896457190085269560320077063240744390945543298734163933076390800852847268723891846915780866370885782050245477056357544654583119258014409021504561016925378839878361190561580782875056594285065583655990468688145199834395357403106937935824760810934700883413929457207664342072543405193505090717688282434192414638239406093224709925453132516053056802277292184257441746331824932943075086343111278,20472030140330590554727016751322746521411547021589348812503605132754052870300345339453032427074737788538570891246727822818774891000538284023878268779231690147875265496447517546051987993131805558030308294615301233476549529141133753715149811029684466002817709334036803452074715441881335148948617848448549417354051160238759910288354822541817903899839091496273435021826344319441409806973908079330351993159801831003550379943098083992503486981995525990398355622285332802868604496636639655839747683821735810491234886789689703654299736502370849656509374303361111199544583501333765966424789805698080099714702838932727164170265,2453173651401016059883376082702788558595819343620938909718003743834761063920578770151771007440124157356829685449240956671627119096461094862434828440771694576875873539491082895345114445338009283914246401641276451109273726841868022516636570181871922631150553766823691471767095455577358060583652290109547591748476465162423200240371828509110384977101559949176482932811774533277255627251591525680337416653414697852938946477765739575989782561041133771451257557157756072849234217247160968445068150218106127891386897699168070200218755068578136094949985380806928006246790329032200529105916916706533850553672076045608730359951,24113152339438360498818613385483602121911555739122745946787379178133957345957135620586264478203421944425299426192146461629084303328006516447630615633641891356240907180660156167532682435848933370915136668244592305335752238307655218128679169067763462102575980085156721937439825798887974559139719995948680828470417607776837167245694714142889348485597791698351034577938495332154328968099025912022930753095015877561713107591709857548795164690012791766454787725487399290632750389338230767552797412606609844617222343058516288469384643892784348204522341997782682670665258025662990169755315957866286658684293611644496873215267,23048127989879822710411192866890144848102725506107457207672066933390327615164057701868652098516421397166175276204189099923035751642625511125320886106285613893278788342927698548384268560900735111168363954600824026890037073968715675372129633119593307084369015870114545021114363768521678984746381386414166722200844864695581741219036038918650136132423598216731404838838590398569938445014697553573715959930243891120229359688175340044395042982004999256741864583061848148945179825358319553305735497035945950407010348447423433336328707080153581767979294379351950056937128181379551873194994067035954630194182060875682649437666,13618893464695086149676203128264379703835247962620883770951238013108147463339903484787069986025297587613907750851693587285998342458273645890621629308654871877706080796956646324471034007240766614380367007821000885398439611969420081154359024999574164769946112634981576459912811818772491470799900760145047753530968995478407930477477944129573287306569838212654312701822189291272987922653156057983889008935259264244527455188704827518079129994488508788103513618119832400499449348458232904888661877972105894911067928574676593878643851258312142433749927142945806711403413926146774157545099025460329680057003565864119710344042,23894029291617241391144328899509691451082120805949912944383938437120322549284785238294999166576087704069349411280857670919349460489513399500828536265895125463653495907166485758411354581066514943080277665731467417672021474933030712874768858153808012182457456133833868682464778542510979705494991241834256525297885337509013426009068419788422403698033836643374538850826433098217327104341285009528115639746062522009884356634868057714134080806096522631119686584895158882950387390079669636785522392222833493980203199840117132536258676406629318977553433626720193118379634005263005358473104730141003648560474105109737111011794,8925336938516965008397109104514048184046286665452569746388287155124102463448431342748346308295582163969585477123381674515410213967775651281608577967919981280923720344420733336038269189964575637162708585549385406099462739524026684819607311522399446887121322482655436562521377082292558533779186792041587188361186852658931953312216304602575717772394803653647861926317392730789837892117863267885605817028617970756887793540591824273228108598874261690153175536884068161483807477696239392976829822163308261960542651335245650622440817598987961098884462409657203750437907285145610244236094931259734945402603438305753971150592,11949666259971918796589430623190075546810486453882961593114781232790528357171489136086300172564872735213582648459678932324553671446193373613445392996846768949427585353892225809922873734606473958012848905522095066153323414491640379067553063059327565094898320425802881846169782611727703042073646692303198048486923691657532734229486488161759607766287874080676488615866925028524263799527274261471472615111756048644281578781133899646868101860588922113737985515123939591333283772116702698675273675787772365936701715064375893211337204849804346824788133348904362412793959284749560448461044309070434592388006426231060171764771,22250566339370324059402215781976249391077086920660167269541657986285216346026428267640441435642495757683689137264020871118649281135403445710476580606390835296225377720486579495200200373576733192798872047011357659910138900430140520045889539388154712432007987497852789128001047310532391671755193946030519165629053752937739899959567496721448943588557458516035029605073085115080892712303741049416122614132971525567297514147438256957998569093867126816514230762539072531021367441808139154778858187018499802649090111006001230394761758788797026721593274233504527845651968558769656875733771044784061166465882679811351871629592],"BigXj":[{"Coords":[107932666477475802631511202367582748861519739569035537904969017494701526323818,27810089900979531039053592509940878404833992140356119628629019981009106058899]},{"Coords":[70488850009775279003934303461546816167586319901288720095232797816893086714940,21365158033407193885213404713050228625397820553043856269267720323259910113340]},{"Coords":[96704419145309517259142970140495022508494287400107594467439362232020961329299,76628584944766298203991062873793502752240767184659143342509677627090500089962]},{"Coords":[28019161860991754547254544009397503028608838172584402384170752184470432984674,108882834276696603625351040619123218095898824500661874818668494090573839581587]},{"Coords":[69854419615803608419512220164651266075688659942948825382651503385261699188382,86209865999364219341605400066204025416938700532196803014526015416182305901566]},{"Coords":[55707469940275855599640808250448173151230633312005616373715718152006593734016,71581471827456608524472614862044126332419275513283203837579704443605501341979]},{"Coords":[31537542564214197931115404850756486671358385103785295421162883744455005249506,31003647934233069190792056145926504346119044635106496026002117518163562078840]},{"Coords":[71459743938853567115182393388387842195822211722537627655935266215390092032802,105621264392663357649957909617094860377111556629887291515711877643951632476111]},{"Coords":[100170179262204638729042299933877814060918019584852761639094198183345507736585,28900877763089774489040863107152228045173480683157331262486804734772631569442]},{"Coords":[3393930126761759176345687233491451168543634500428196687848693751772795262696,55773871461934232294712308387072487465508923595028614508001564000526922809830]},{"Coords":[35436174997161384450863357581481493940397620545951968086180770941965008242533,22941476771782647278770334144010957938195504420883358055133977993491797250976]},{"Coords":[20742591764203230819083960194719627433799141307841650214987882235851644570480,36792680781195360005281832466704518433303594582044389944698351592636972852101]},{"Coords":[78822613167932563650341174247543824338627391764838115664582901884987316485415,29305611808246076472515388603014476455888609363718621630903671994111327870746]},{"Coords":[106662917025753316359017201639970683777210765763056751174154469380644107823988,38376047705320523688829546978146661452201839032747402442602961204420046730181]},{"Coords":[50131378328647772110850225682895027165473791107252577081428683178756073747030,6484525664721285218064077598136507537588284647694850022336064622644441747313]},{"Coords":[63814576207919556970263190432671978386229401573575575774195362165468317841987,52351921007743438678847732376277019290979039258214198300788054101141627584484]},{"Coords":[33074537919982031116943260590723731125144796968052633499149040111855190089892,52462876494517613825042650703891412581466209764861573326649361336309483684004]},{"Coords":[46337244846970653814521818706394664913446423803670640514811670889644615970917,60622380590936530234720907025041106487069869976400399621024354043945489694205]},{"Coords":[68932201886808999446322681662607675293176822755681592496851252047161893154617,102558540543641758967834783938704783088913683989892796677072783324191846467831]},{"Coords":[47093684301174743530406169926797075725911173707597448168332637736184121729220,74517549523358620639964596401882412428175945976473031695393603496712918162101]}],"PaillierPKs":[{"N":22709559588116531632086995360614881758145847958604375585917706994116168375700793376291131544827864145364687259129107134734036373558516565338923959924703156876435469021413354399418993619174071015237246272863140297401272631661028437511282301913323857011886496541494453371682094558243513835287198378640755589750985308457641295136946180231598093936765306071278862423297167033582450972276390473663053961764398615170355333807856718875047329620163477731845253445115727590642190491372191245975524943279344261890117425706855830582201691939059698357650223528988243289388677629074389631868130733940366531485671699566601163615661},{"N":23443957150234287781524191819714980056334495753799141564738532515877512840928595615570444488815473106829833471979932833846134743028112638013245259429585839683894162551870479232892081727695293106142145837752188330564435054323350976552725925455074206192778580457152750035194725712966851385101176362564718763658489874740341398176203077931510475924742361380746164713522692182335455005818339528332609035897638651762193188267900136476551393608916669622907100712471489443414455950510417300576764177277906265582678299980344888299166427651633758323734973558749488731824311505669417847053850760848940423643750519510719400853833},{"N":22287028689259504755807149120904050002396020193634043129060485604472139332057712093383073269246020913354970143960065213561811698182428208504100112877284663913440710058603853492628849020664094889598583038642474751945815658301741607940280803922553940685657785019086609257141579057485855668397778602262577280637009340765489166395694519909332104264865369924039797553524566502151933416185073911748303993059047774791584591703105106437459703251723998725467328206119091524784524659754164199098692948259716816125731645175450298738430174307931086107554346505367596601043514472572775722114263120820933996056766066990263737006037},{"N":21778455942403717802437188616130445569467912356333711523204106321468333958250985526522676150458521139952234508699903096368286173136552336834061186195705878795885628080532376972447127537374960052755412900354192740274699607194495256559382391407619506149746521336051948176770581697936379025338953179299724284866217851767053361169462746892201032000776732741861429352495405542992367041691709412944529198233031428083828538853890568987466209820731450551650370292813109604532198408719181905952928419308306626664706489746484860069309396704199131581338218405332252354539932883923534658047809067343949198229794022084007329008301},{"N":29488834801717020514549557511738862835006604218586783270956635930974777840977382736818004943434492491272083417763033198615963445455042431681833978353867438176815774128330303688651059852719975859250721567522453513175104614385098138081209372251486732213899964978141377939387124226524201851559541320231331748973500724292675746395999336271645347092285737228923411234511145980962423027637945866866145915490526131803713409632083226573065035861386075817821231913413262072294132940186959486615122177174171466978866072639941945123654758187894442697758141328636666389957637295324259708835849664958476600091423260629670847006421},{"N":25268781854018641821625117526035412649921406362359871346957405856614663043063881662682001256500050697385215601589085313282671061645985003913281457834036290368462929918763869754871955608135979298238482437377851913552755913815405018774915484866488142406303297444296659799278477225336231564636195441498040062964451813900346208766721654100661710718867197194733579941984196715209521167970358227552984230489600141394198144474928084583860744656840175887777161454380202188440178263993042579519816969496156562013371732648143667185817225623397113488180419930136011024805515953457443050643425221010148081098971618629282508806153},{"N":24077030535873838147372990238338423111894661719881851208383511932936303788667059523325649062922462968249640702042151293306587810036594125879862518141403476609262478705296844024060273562609291573351215091787555942245982552314643486135981274381916357213038852978171063476276539384812002232533351978097782562939609101707149234139391638125337919614533689982228496010017193463462456934753130533077727108799001253943486336718218272844533405886783727956436625979626270665501149887064412642510585330023269746464208739229956710668053204092869919317416558618819105166451453240320574158658174090376334547079951345889147202424197},{"N":24121210025310295136286367465067731861316363403302816495348899075683542883649267862423504534408270521528934904000166037695519824119622953526124849500602533136680339478221010232315859804261374907195769559713293619918530079931895046819311703445607618111244570268187554380693098539122537784889700313005700764528116670706472264450599583329582635827622249925780628859318211609939169828662135675938640346560681426019582628979275573701346775265344080547061237809761964885298244705276139799178175782218409921284339726928435810584460742981474010807766522632224843035722465220411812727073796692626221078545796203402892726398073},{"N":26956782591324520026471701264974010002551430844929064558517606333109244333104364565707985261498791802440691867651722784210280888161145432103606824079477489895607158911928686613189674072708812330140444741131333062722881890279580684791181148664415766399323289281546841599984936640417820094077391333063403828290767644884268872176714175866593843027335088472731880830448148161449695591865312724115778446298294191846018327598860718546463796845910458753293225328770367785304521228332493000905274903063796918859478998380272311510096333363160486944174426731511854410356169028732110892177884127982236790065871058497952170624401},{"N":26249557760815986852034237905417683014048371748204856284575862917968310785883486514046189771449794410062311941320778404041317694258818896788913080156960590072834802977027251267292982532721343074208805165986815554608059680417209847673748867108719737464989377176319950884300513507127044766841349776517208994115342645229445634306184178062065483947743824551463650982111893910449653832587022792656303977671598375329018430362166017195461057586254287305421091325058340750141735758488815547176349755224428765382123772435956499576803085012124378000542928725389368171404677133866847871236251441021957443853014282022367009685861},{"N":29234737641692976595774236923019314216135921756073342884203680618120226690739166288052322806435356115092650761656136403373733697692050475566331202817414926309882834844059857181882811689758047525443057988160495074334079542319370840285641441603178202467820462588826229922786870937847036888109767951604636584098102615282750014508387427358079100450062680715472456836097388046216848854107984658532128468648705497171277133763535425127577293318939184956565230142817502839346792604559307183239212332206857888330805061669830296766718735240517983609617995793272006065303892130080909658027060291496416496673503247698087863812741},{"N":23656386949781378983561509210223997485938600678969404520355733863050336777307520388106184053630795530040934267843013912848246799628076757878172461266778291537251825140340096706161543161977283845709058224884977213986434571463756330276479208682952096086332163009127424608568458165322976353036562065434426650045708578336603634894217912009997772105108262453019882143577371634194078714264992380438885990335741008955488808069468796086801023973076920357953123958081822096146124559004458043648352764252390085772923647155984579633692639191141425745475545839873632550694666801559519849238477058285069280151324843991596401646381},{"N":23799985430892428550287426639163393896421663100337917557737015159273107046495772196531619480943457572757018895004491581880198797117841320493538657520011738472038586707181276745476787089472101888983238214242261897466709975139313526918983914349699164310009561585851364405464439780111046692215844366708075439030620693316351016954915727063684631173044817825576871464988585229583331260702104268887569088888141481975510438061934915565917441018736997897082388887244599485050548831301667982348795441755679549415459512278548728977097478254566801983960996625453970296380670902503277224729081061542066926552900097298958795919921},{"N":23398981485141581657111580810187356464859260220476400872431878471724619284703169207796437272649895475435460945312990810473873577007856956495840504596329080928974891464665270653430872926713471055976901497303072174459471872022720981442223753911960555794844008812776454183058593769792366230853507105586338576934054995838272457499054915439455088496111012971850904735289245691042597216634196809202787360353382667100073960437339209464655220130141692780283364216457426778903461083049390591667885095066567970867147659207581183606534554025283663685502553767113396678790806758816850832944906936477595076662914396730813902861273},{"N":24645804484208008107774215519843481629641338685651268289287772114412526440944111199969614165736177320304962312701073205538949325003439610780511806547845684862319242490345551374064725883323450769869814834613757570218276860284970150303912936880248283750218053176729988470901025014948637258535944241625099061769802348376561541469733700398108049774899180411488580995483844861534070436865153589414051441506488195269353530135159150725450897767102214976100194473384482425657735122085724544900424323758582364844065404991831422328546732900258700279735848044809564185617079126240413557300335393565946088211107690073344594774029},{"N":23664465666512928010084076006211208070039097235865486451752383277009646489200010451773766854885315852604650109050180997494686499532996982524560956955784208153283884502900612829692080614937231941501430129101050170848135543483642879522140453631883679490750446245717832265221232589489474380464199065201167874127465810334527670252907568617820949350516778153996202871756067806159248004814563340677682071536108582393686279672503548392243690499337315202892692273695083478754736347613219568092769421161385508903701795824994052294039246344316342377047969959511601521901736714883097032290625287691937066549723767146291790114657},{"N":22165609813091667259068375406991183583538522584875908765309739098448534648989953434651686788146626220283972510122914357995219529654582068510398362007031593307847827533082059785375352080923687640731375327188268078188971415753864060723639564145551626769223269559344648109409611860616931934210627553354435590764505138165455042290624193631088250055962033560484870481238850988856340320616852463026890656813658017413542014132396994215496811530247375977104307808133564653689276479112825279061966541271092780066027501498091088819663615972345385914896991989394778860649710938578818683661928070093400675043514978345177529652389},{"N":24352137164919775060505902875895344669551891343219870713119659495462675754712808458066602996522267529841963340495194383402601416044030073771848283771276922546693343786778909195920195728052430645791682092298169597213540403251589258864324656830830912032021695409682689693414793104678019843226941004344886835923010707685858497420014814885662783481710790760565625597934856999445792014460533464855807508832344902590088930105318969772303090927340774137226985715726042801943592444113021856673268564036683304420372700405680896320106848396385562893886698977710031223312091933030330629827691164100994176634674536649129152931477},{"N":24388425323514301995345880181969195093222141730097776998750148283180811486102209130079655780738706237274584643472954914248041737365215477795339570700387683883122567928523036945799350046333477704674538444513982433086664207664876244841911099162128315338715496189423824903190803189243082722638413039421880070666657272413079871744422617706188003161639646693501252928939859937588136677607569634910081471599993513483449765647227570734163189729311880395414909879933139619835138785852476313690881562300854512419432999005203281002911021482679309149225773391703345476483158302622073477221903694296256566718995262186459619480089},{"N":21604728584405813409256303272593334134333518895675489098410576803850613670962405878762275711641486977471395420657043551402890823783906820971712770494973201278527635005537714974340519544361402189093858595896231890523544098157276831993549216761475195055251372273062282101577640320665049775934814411518181030603401788639796770568692007642464803606076672769360069701571162199680486773757848273630254180550410784187377722267755203781450486589090106764541644204842436002216866597611146281471192249537747681020939314396157603364418120170135828923470079746789793341042476885118587449440114091973976013051496269141578521399429}],"ECDSAPub":{"Coords":[82191134404558877049244897640959846424169542769967270904890689024123037541855,102677683688073592669768840687667774566029618427936181452214529135934890152533]}} \ No newline at end of file diff --git a/test/_fixtures/keygen_data_5.json b/test/_fixtures/keygen_data_5.json deleted file mode 100644 index c7d8d32c..00000000 --- a/test/_fixtures/keygen_data_5.json +++ /dev/null @@ -1 +0,0 @@ -{"PaillierSK":{"N":25268781854018641821625117526035412649921406362359871346957405856614663043063881662682001256500050697385215601589085313282671061645985003913281457834036290368462929918763869754871955608135979298238482437377851913552755913815405018774915484866488142406303297444296659799278477225336231564636195441498040062964451813900346208766721654100661710718867197194733579941984196715209521167970358227552984230489600141394198144474928084583860744656840175887777161454380202188440178263993042579519816969496156562013371732648143667185817225623397113488180419930136011024805515953457443050643425221010148081098971618629282508806153,"LambdaN":12634390927009320910812558763017706324960703181179935673478702928307331521531940831341000628250025348692607800794542656641335530822992501956640728917018145184231464959381934877435977804067989649119241218688925956776377956907702509387457742433244071203151648722148329899639238612668115782318097720749020031482066813832314808727962678612884065930036166308391589334583231762298906403586038744543445360168324292331457809521509629268039314740061972189613122769924166570961042142522662657620693495669663790659477200349867774268799553512876184041432254341666980693013347242713088314577448173911139817300037410941777171545994,"PhiN":25268781854018641821625117526035412649921406362359871346957405856614663043063881662682001256500050697385215601589085313282671061645985003913281457834036290368462929918763869754871955608135979298238482437377851913552755913815405018774915484866488142406303297444296659799278477225336231564636195441498040062964133627664629617455925357225768131860072332616783178669166463524597812807172077489086890720336648584662915619043019258536078629480123944379226245539848333141922084285045325315241386991339327581318954400699735548537599107025752368082864508683333961386026694485426176629154896347822279634600074821883554343091988},"NTildei":24303346306264095483727907643814355785838936488512300414348142784703917728792656928355740144163123550572150171398192480623395181408570425672723511597546032812698562984141032629389936754449924613948711482870260420456913877526422469201798411517711928654451945040790337077196569240216228957228264615761147375423719114756511538399142649755527243797217920772594702713281103939163745422429156605226253637010451757984598979666631182977221341184990723224510127460146263007980086670575857365789365543477249518437176817144448210584125518855115672157465775432933601089465408090382773104140011964681476656187299047937685144419517,"H1i":9335293725151276608993402038690349490322365392613976918346481216796454921531989892317554215286413208524498017721329770260220214739976276463115767516661469141467987234112799014449837377419827917305931640946522287484467505347102693011074644574833321939291182991369361351550845549986196632347752029739003400876962371840702829213086378506709453044627207644282674209652698873675164479665879605315024759424379670463637654094152277916485019222649587458037242630015801094579916767996040360006216068355347853880839844214694922100092515535187976540400673364286904799817798092386690711558542096052961324458158162316849747049802,"H2i":16128185768089596194287119128971616467728481679140585100708821051566471323843047828854183726318833284371487280925375797724567335316422823058316454263458054143106806709907496680547056853651764349462358556329487313360470751830659004515085115085503406434144518308588359624087795942838829972724870214686385899497790143468039433972576851570857473482249444251166188717970319339154993972583107254198134043017660882069243167380269891894037618164535745069845632928065376946760432598515015966819900477155552863106379035709861023910264232532374352692943776001019180723682584987138149276551856921296644229421379331608912433891787,"Alpha":22001157786432903255875196329062312560840692187898940415656633261330265201531909757740640467560444177436689183337286705187374345116345813260345509709083083470931253132415868486050983254088310720699212556145148659392459444003516958258976024084406051753399345541601506691149444917400155783160310088102627614026085955308670424506108938312055083686208368856958386246479863281891808085768084064405625827768229922055459766369942193471952089492918078027817288461819251271189478637891107245404914571173461953700006942119207865648348092719564714595368343678245054077681569823163107131280892866820268143681067582503823492908276,"Beta":3164140941902213810933806973080281169184549613518969285449612754923390304713375712164471119276131644224979390651172392560140213309176631752799842339435447460789803640765283278469673308885303742781888626025082711017336579306323465879023763181125443119212096859030522028420838386125119118550602244906382580507753746960472021248251606009694519936056720462719323970662076087847864853941208716729374601454509089092076350982566764488886561727417695196318215016196040400878569603777895750360327006031293371463168562664191004099282959558916488400652655000580175332541654064921221998762434589864884249813826945387265531243327,"P":77869507259042749431217318042899203198387283042334849262605135569691432477602392218451145650713549287702105473234829527098304022222854825559882489524997744746776292664365410627879504093728064355883959009185577327172376230424244436318351143142403439163935068232476906943128997071647121996267262291278460131739,"Q":78025876757560391757356537306317275787026010340373727176855542613315016739668326574318898728567949534311983851793231565879616824169946344609817958483673295293370173094427464432298286482970721437212760998823517570971777762652765583565665796745815263056970972443827686591477801822923796653613389248835813890261,"Xi":55863111694360075505878076102997826657869397370581722836682180595389722375910,"ShareID":70024534756929667616115849317753032895580033020239899587896153938577578972754,"Ks":[70024534756929667616115849317753032895580033020239899587896153938577578972749,70024534756929667616115849317753032895580033020239899587896153938577578972750,70024534756929667616115849317753032895580033020239899587896153938577578972751,70024534756929667616115849317753032895580033020239899587896153938577578972752,70024534756929667616115849317753032895580033020239899587896153938577578972753,70024534756929667616115849317753032895580033020239899587896153938577578972754,70024534756929667616115849317753032895580033020239899587896153938577578972755,70024534756929667616115849317753032895580033020239899587896153938577578972756,70024534756929667616115849317753032895580033020239899587896153938577578972757,70024534756929667616115849317753032895580033020239899587896153938577578972758,70024534756929667616115849317753032895580033020239899587896153938577578972759,70024534756929667616115849317753032895580033020239899587896153938577578972760,70024534756929667616115849317753032895580033020239899587896153938577578972761,70024534756929667616115849317753032895580033020239899587896153938577578972762,70024534756929667616115849317753032895580033020239899587896153938577578972763,70024534756929667616115849317753032895580033020239899587896153938577578972764,70024534756929667616115849317753032895580033020239899587896153938577578972765,70024534756929667616115849317753032895580033020239899587896153938577578972766,70024534756929667616115849317753032895580033020239899587896153938577578972767,70024534756929667616115849317753032895580033020239899587896153938577578972768],"NTildej":[24366917239515824974480442558600034492208859976504581465004349103795399783288421050831073024860369440303795551299953821996018530997630686285237603133194573622718124597460737572013930327249120648302190449742363261573076443183981343509885970573178298207488759436277685910850783372123719807298277837194569211839837465137044422691734879346883675317045008891659749391963717253895556693016508386391015178130161988317310806894350108084212611277788190739249760699147435109968242744158314817905689533615803297627887736048945645075792686416602832677541152918424023805280241226851534199867283487943291927564365275467582581271053,24760645214372673899925400730945520473062951341429554908754617530444794660401836428698520741646966955149111758288194803110363170964340801072472223878272430220722034553855593944561986134993071918255771235073978495918874383067260043443905506152815841034811512510858407909698555608803009379935760654878372301870950275270724586431009354962811874333750886958869738872804882633350285507993032763679234057221556156642769183354423672540429587887851343483914923600996425040023829456198369968692844034517720322057627565080062766276792221145223750390964637842847390939964073972850018793739320669513533403812272268817559996728177,24335507174653830446370401218472354012341984065893977351232759664219171991998539382418393419142907217562914494098827810315198583692551476438232634594991137003295122745831430159532586451010818106345725278793436836406022036374386618877645773128457664942790386603953998246404350465143928182109615440037926218085391564421745517307996722808502413850991173460229650178023548969664557299385141472097112836353938598657235574893430259143862369227601052831476146199261368117297723539373329843815951236997008000605506966102265798289158763516254914284024816124992986001907541315389832578466014006010753144367487203071067653140017,25353120959776139123294155818546513426444543204238814947681743626639583989194265533184090862296087842527526282860965927846515276605818147773016966742984780344247645856238734726222917730082852005118152200740071409410429096265046046476115230269737050878141459099734884888260830179970728221214610731604157017545322535971152193773221758709395769765431078738204491094323008301356895841037132747444047830530409305765562694358003007195242702308043142399969256485870876259711230128209178441443167004632638027691911658424285106297785382963002590496015895572427776988235599297735903480964253948429971597628412447354914215359401,29849885402332341621158797110436829396646924395042456662853244309209629024048299162272105169817115314715561658954210859089958590864101117136365470947498907594068557026997249170993874294161892140147876022164668279854630146959174794473879294364568105935870579392660025720467645329300426773479121856766502569984218591054914763859996476236063750210092775547343099066989888106146219058807079888624162205626100491953381078296178689026680702514982189001052448223393538379392778307314168895065497502603308074595916000270844935723623383768691838356870704054233137068509668072099435779943491520206735659166266930856700483211181,24303346306264095483727907643814355785838936488512300414348142784703917728792656928355740144163123550572150171398192480623395181408570425672723511597546032812698562984141032629389936754449924613948711482870260420456913877526422469201798411517711928654451945040790337077196569240216228957228264615761147375423719114756511538399142649755527243797217920772594702713281103939163745422429156605226253637010451757984598979666631182977221341184990723224510127460146263007980086670575857365789365543477249518437176817144448210584125518855115672157465775432933601089465408090382773104140011964681476656187299047937685144419517,22663176204438991528847068755997123453980704364589354833944958947785385672266299429364336994892902925142195136026995771544990684289261678272550855925683439714148609523477977179010696117909805695701859018966669150739407573082987363056991238107146673103957237104655136409343763639221993038484198677605284199701204669351878989982962102150055730219424526668206392140254467740757469800556697236694088468633665970603098311956910105499246381935436511205439918717236853087415401432056630404175846159692661637004967185601880460514710913037913825633119857629058574151126418040291146967097319384900092639447317903904481362864461,22214406206988221120543596573138808869312423548073528052574227838235500966558488375856182495656208729058219131190228351185002058116343873479198633895772314072671413818939926736318457089940649635331152484030046857163634723835906012553106874988855844579826872824922610248380139635284283310239564378546105159549071234915504686574306652852285495484227675227079507874801353534124836509674143920296971261218965184384289987323806590503991373066703353411925035343072343417173322682200148341574699074894310006001608609036165489022667366737175975429277190015768847957906950063130121905159960720849686267420829596753652148430921,26992054981062895613627607261766199835432715284801801749398907129229048796737348701447929605174559094984645968238323112325575430714478210726667128296579144479334211667227791506349731191531989884599385537951555136889431648507040431760656554949203843341649040209953028348323032563665739842658324687215759862340780391326904566525914822596715715051383829453805370490781186878600411802395931887164480044180689343432959074712196207660797594065685195126347713904229309636698471250350144098081500570797555478540127343168177689831999672573508345263924360426808488416307292793876390765153143370885661040432948994217496537757037,26883601429347938201866566412436359463282736845136879263977010812101340295160083165177085686402734295128738223195845941394861534416081222492334460738589328436684156816061652087254848610272225814333318089300032442695939753398569200283276971829978683842747584203047240258517693679059389343721225356421724973291878661622168915849085533925700422984364421907650824486413330797840743205222070155228532990351439410717713883609930796830287062705670943579996135308824473851899048361474382520461452309816639861239026761274994745411785747289015653392872405877863169928875880404134872170564729075194783267248873823339090853461089,26675898204441883357756938810501612911006923314113656530850642169244358619346060171584915468088311545710004060513299980257359925141562861692364285790755062927815783069742814310907363159744172010043214941961935176791603921250085454102936917126214113873120405883118273636844903335000473865105148550590214462929117780405311499444885924770449779157142014006830224170685309315154438797997384633339817640551850145502452900467824909085498261391267709054450200313476628713250795473832792093350711410373115197160491274663551092524073340836221397352664353235247831158949819050115215290772010284539607969271690219902603821582657,24003425727589170532663869192322030538943945148822062399216337010945961427378027710524236529045097740008239529891693854573603730323074574387306355517555029571396270483790272731994105657673718134894396083438028861748333502807033025075738141563799251049728691667635160338770958887288469952328987442729682278796947289053518986771911122562542149441355230810099948748099507142060010177281487688268845292432759376770532767245812643377347484905682286529844081415426101824234408564247618590677966518836555327692461478356122297916534505785216531638872958168430321684571355170353352724268927780693184938724886624339722183259421,20030939948791694094921106997836532434578994294403521371501479100010836848962747077471607238761388497679145378822499150459403963802326636975589780084279335637070321781313502047027883154267014733038805978970710176410579107929485519779112034850622531520287022547371539439386174878773544830750041302618611105173361798826270784808992652396596786821436733488377837349284332001375201088424331364286550732742247150161681889289004480841207149941594126907534285607712061943572341899739867922754683103581617612214747009636033814762750497302268078808823665919929249386647148964298452596399586628310864464196272071720395192133489,26870132374951553243581913321377246229771795848056596419360924847337540300978229013002723427615100062690126686631934134732102152941473371391783556453709425066357685692036492637888980565254013131275256724381428020710512422112788440607830591932440438849890272166273212125255293837259298348084558313308788645038416611482549103781514142985867750527012906984385110191046837459757808864741583473057341019452578423080700589131792924736182910584032669431737863108910781465411300404077532371983623221078943741087750842713540302692591604785862604978245628364756611702919842339423052849035969584933072813435912401288087398604921,25781309885353513172762417920559862373653633766198016154431702305819993747433843312735651525316421555779956949217599915608247344211910767561492880228357017663462131839160610108626231391786518524635537763772771732022138542377442385539024671393136972077400774477946909998449518641822004119697621239956294809097040644518494643152713366295240127317300380586618659118989790014789381034410565903140125870883802621234783419468923863900036725871332435066935174631607488613764393382263135690909855298574769132391272005233712859895795189174927584736869111985784832037628893972777670733794612566699959726190117505644366934694141,31307948529511772422092081620376528723351660195178245630091738647550584183808045529448767036136429258045017880313805169530174754560039519751935200016137594525166410173049351154227454247975670642857061354284229524586536451868860885813714578893448403685065908393856455188372709054731049692863370865677701391460552630927498629863324809550335559817235997586126538332699529118621351625401581293898546298753212618743290610874832103267345624474884402930254336353399762494911879332332316505133643206864735435683656288655072941785814640312959405902536938955107787448304325831133755028455554235924936888965889253927315459519249,31466961232199038206393986199348595708256863299176374148227521484010795684260339468184532260347996789772040097386032241172658309499404470468218492541809815234208995118730337303514831281668817831605535229415260143432704661750281094187807328676322407373913844432440683972812394664524853699586055958635280164067281091412249301309251915772998531080870705450343112678791059297982033179252277552572737658097615320288170699408198262523087724946180097295208523307748556241283633289461565623961341136472687878275672606572269060361808996126027608464429012339688636176786148346418213288770613540923635302757146988963110333316781,23282315206683722596094270562333648753439051790898100314922005841725502497093211800334393760989042727597691714582193235713639238284172358062468387217727181092939568556559834956352385929118617242221861532950969685568622107078283773942779583910577282365015752267710687089071780861330758005577221151609134583129504364837341221471368611555190375227501319216183854908348755278500330379812379883892909358375120467449644585220805660246421673078936109889143381498767668445860590513918867961598096050612727306953235332046855083649560662539716078578551485777683734466740521988744140757231408246451261769915726695959921765032997,25091337650425677853684475917739333556784369056148930585749057080859640921803414967035499248336819782755466354804640016025044002503128223804670636762370700960312352761126598625504662989187540799606658080278007629478214427447535566556662347722562243890754037326739900472696108231869156013516647618154210840364364919089100138905499001603568088340085110153219085814807927945152975657929969505495173887189020701090313994816079981109190512102678874334588894915787220152560380696231794377692004958328931143825599595181025003997691503128188855105160353707735893011124272774335559316106266020514461879401833904958202494061001,23827659784682250604442454473547796888740733968924087692522596947210995569582513002946432005898923676155984614087332560259943866897650716815951119740918614656692843602108809220144973266843900928325168304104193270024169252614460073574472494366384192690720704949267653372513388389564250659367518167586555169618994627094576635848093242114762843534765611200879960614166650643590955853799316870443339993391685970472310294098785089036360647811365521892090305001153074254408707786436158648387047030717269669710808288303673434511182840032065481730245714970751088620360458026112893074508503440200554493648329036195258926190733],"H1j":[10024025457847388392610646066298514243370787348338532750631360639913721829629888261433439914402718667116400994500512300775136069581637894623537510481269716297031115527602912311323880048384727148486222115704187210174101029381357780998875764924841198846224052749406474209451141960414618133437662859572202780961023516801781475926753784006105642819239485607653090319392184244933555747381471676665633830261574288841173438644814600240117247473386184548108338325639763390271130259071021112922069642676901166841167199223435257080313456925802886649375691201308332777566495693037805296244451983094124223174758130752134991251259,5540062908155010932513159905564312164946355979316528931149460136278288806659772940588319017326328094974853633874382463976169195549392127817304835111543615409573476314059060881338397061412436243810139473181382772109210271463439624149555390649740374635589527762045108740275882849527695527198385706268316952416235237543464363519203592980469637771074904708426157233888490918907104014536294284692202685017252106362206847500376336741712522098586355602155374318553270307953934712780754034315941245597336144803859821983984428471938659224631751193248483706020880124594451403191977963618445462632103562894369717754678411970157,7294264017980791887588541945948527964732046841763268733085682296431903566128312881527716171471646888128877802321111011007465120561544014131687975703500639986893207003039277321438260744935109724584373350656877837682253991859961109267518971621013884413991023503512551591742311046398421527897782104779903020623974791981836764750802585775470044046719785755322826006147242995196401054126149520747563133877218253475355114168420889541015916952420416242677374123641966631897855997275959219115766326404348502491490713975699304986526310844436386187304302850704361098476666746013218735172029033252239873173053183420490728457969,9501218113444747046512167891740890620022448184208745016727575118910400114702536042272711158066289559244823855716406559728787015762712355980741317225927051706399078523944764818407725281098361563758658548109686452917704268397282493394145905917631338144130662786869889947744035847462163212831976185178442327943506290185820473986106267053867388409405767987475830498385924106417897644176202343305711004215516685101951487059182051580662118563531777396290757514364141633090265347173402382594862836539162320425532069699769291364183133350523773491418365804493761877536170212947415911627316964969637971056063543234131063060179,15798786414829945409990379475347092437191933825852017565866427461531342919124334651290935627606571949258216191049074056902849155877229528326934734579833314251986756112086465450838437292200045064209850028597082873902388658379469441564667669701765841537160309665720024332706155566138689213961078587239980763899119769146527020365437175547591597253422987241897416697834718145603044863506510817025716990741255205962477142190641478116356939618991137525950385435749637759382858607750867147376236491183474725313362128439752969796168290272602393139910089130691220986679844969299810559606706770072567820176650336982258175656069,9335293725151276608993402038690349490322365392613976918346481216796454921531989892317554215286413208524498017721329770260220214739976276463115767516661469141467987234112799014449837377419827917305931640946522287484467505347102693011074644574833321939291182991369361351550845549986196632347752029739003400876962371840702829213086378506709453044627207644282674209652698873675164479665879605315024759424379670463637654094152277916485019222649587458037242630015801094579916767996040360006216068355347853880839844214694922100092515535187976540400673364286904799817798092386690711558542096052961324458158162316849747049802,11928753658530568234030789407795275088740952723187227006977773559909074576164921817701724786519460916583196165018163510774039491890001017299531322520325627826211812869166690445989428530376091680807701566180854522056382923625327483414081231404244458202347765643506681512770879868073522880161513490523543914681148241833246281106290736532685240004675518845019764469048182810211653160870255293592651339935498048137995182398802459841631852186888112285076188858851763824315081771524248572039785549974159773606819792419731561145595921289694471859455550756883293661073453125644271107011011223441502328961618975292599286540534,3281434421303304451534752490245528887879239197847942017450979313729063086003376295872507109217827492860554007309921835555072782997029442232019030164252143769859146809734506916627953872016140383116721175515392391691229687480990552997729334078523811275423771755788388400181281035140972235710503768780977567025805917901565574387698038208089499892809008311004708551092635216129712077377038639345772519472468677180077197280667928734700336917165150723117546746441573171713790905181182966896063824517476166929486302044010896828146903022644169171194514314475627079949830761751962833520028060036397259454122764395181619471620,26798335028033483015595995885818313899416775173626251303214746152969095667991567148306665607431284548931904800914249634868412622200397325111043206330920355980127737464934048444736064518743501106031852408038680600709174828761299003903687195970226223339349891916494477088540593890862438659139800883091968208023580402075789145180476758769233643214633776274238005081673345069570155874633220460290011162900873068065044353387042255376321331197145839355270876626896209116281706932058419419985043694684968787877580180579063249938562059688827441196772120556845945709093021801017783532024267437712559776698525435075445312453530,24379152218258906482492311550879222904032299657142525355457269472724266562417862087603238266608926068245433152992105088073531452805187189356790567435332219230651301413762858849116755355885877930185483851669316692179467165059725168458003778120562044911094551614016767541895327106348965256725682881898632251239010971342586248735804355885933092854432575702106523584026168029150861398417670162335859972289331761535391135324650197244391340985538289280848512779115086784546807731473605687728417756436783747883720385660475468617431753857425268742613699673867257484976547014884809737803594445736805689004998882232608324939099,13639308363088689304499602606006748747737150113207488794697369879342136632158898637529348398215211110838650184450613858330095458701807309615170814350482223259077017423473614957663630359321153124867291328161758174033028972972743424022771180662104664036306205285576270109455984955077713540350117086087967860191108122028954920957836754439818988959156002918996099715859267715547983808966864149367592758343569651869960032231333418638792990340363087590766121964019626938526976202582697949104351928836667810574924696014475214582129919944765647849262874087078594478919124600690586319504349329877883243753775251538124197406468,20806324398112704184576243642308446225385834167758222047710915865491553221121456559290405385050181445190026351137186843498701962906728774890279265822922302262674344261443633266351787522423584433088856438680222017039801221837510594012303704942258177163584539612102842678739854493210477613035711103258550560273478479277362352841578985334600196007452719273341052878795457240578018430753780869150598290734861026318283861569123861098217259089119729724503263571923384603566241538064572968952230647186501970761685868678332574820155746476145383468962025352911125509572618602029024652380792594855032573631797517407433780124767,2984534567830588608251691688517562019886934976940239944296177755224193834812017598586976214786265618202828155437088641819872658344085523203617440122990791586663797768559098311449463943487720199704106941788760276946864277974792415345700942642550277726023952217616537482804161899962996481893200668973584167349538844293867619144628567178172496162265433563681342772983054368775009029385174850706677287569940753312983986212778939947598815595002848721076684937312652495527309505744053588382568512842786184034878250903582357463020880854201625144449160004603244837252628379531756302498757122746553391615927560808029960266625,19681285575282653686371866964026575635551812532880664611876190222601081859688141586553347439412758942096084877111883472375168961225184324383968489352875717670106440217006572540605411871630725641391171380023993395232691314662393923848318294382993540810449491616527524662991307157899373490742858664974644838212306475173795164847929404327886006104677091872987173592834296913553225843321065615965897920646645086083927169011172363123935140462214285019059726271437492418936191962060610764641005376370506280067258828239222704103600176916708092576268163001234852617058752894380793333304339677721072271552272594404600260363861,17663259858420311330651766819499911841067663794994694318257191199872170158137865025958007148817857781638492835306514771303332749042829120815317355608633338052028835394702531720709875380635913577846095483312528431723891955957026638053673584169905737554185634030129649039016018518994356839547241764882921390944931575304729587593422442361903863687010228628846862342208853396044641495867576785861723973159597871732538239253298128840563941065388954934551651787261972744712209405583851147359110032083949020208533161960188954813739180009449972293158373021060141688387818302891372350131649013502869609299334048318236045598871,5298970575809274629438935393989318057761764519542767586120836445032263316761487525811021815951911099884013107458570792999455520743412617129043815044943875968069243444902286481323598638834526377417104328855033745156522241109248831526582827196555064828920153555458318257230359794631019067306886747836486535385255549193636393132450664433886493509087281083390290568729201571601929480774638279112348846248022706481056446460853658284203145411150560753280109970030570227674159359532427547564201906120131477615407933400264643596572008335881981150704968737407428485573362254058660832170694074403410494545950595818012264895776,15913403370317249903846545253264583237445426368566054050873204733344285093615027647693061965382356514660489490017289737470216855339451599323161686141225364898734459213317143215419647354792387760477998230133600223913390244574171627679693591136928514907378143973333998319592583595882555481681002615976566590485876365765518571760268938260544608828017208378436062792581980653043467844284389159435925884731521336805223809049222649874552372676573497110509098941429212961378401761184902390250234585999298135037647853709390803265128558710383431672409386841314821848625953345836234945114508861921890833145094378447829164485787,2290909140884019351426250008814545735225813230804981825833168241438120125584365814035371010990772186759925886882837107545743421629040643022748869446583860483172598682089887676740059939878553272595424436357723367398096377972698494175572434136161599049698027302739164581483237687791238697379241703838109655701932792883820617202754352159209515775921392841098109717647668579384288444138762640166641466203925793570935398566304261495839675905915184706531257340555764797653386663178215604213661066377035729358506114543600757612373813217341582075351741934166661911856401287953329256496263459473595206461438549716253839581620,16642615813361835581230500131246118445590603247887791817817316273244438476256311337001611675388574331977410141699297630317377151836311293305027088331310025109780248001730816502531361314291505497281231329646213545390817348454790771602982974763540004526670479533111992035177312072478629306988622806347623090425003234077873805375141062348645927401285345899503907001825760439541705306585854742931882134500925066002906885338189163552908934604616236359806104007315451823167682352183241953279551520079950202231330492255621315016646701261669501844925563045252616708085163536257987840050252877140816998011230187115088535718084,16010347999096675182232092054526583890655342476048555695134478148077646319292254202928857709848426726687922101503995183630866920756294444357812738165670087524526688577215556076807546011943089084967115014780281986236650136100212790809186133722139336439667178800133917927993914606420172087843235000579778849526996068548810587854703520128067422195406060143205277668392537421614569464766336104310955572146529110182880365088792241394086157577886083440548786679580400292545275535505024808973895871707731827445166453079771165377996477241584002682623055073167645192536278061988188027824852844065261608054572024963829903461213],"H2j":[3368171208877966911054339907901878144315427177489764716664525147952589494997571345476952466465636584372230416806643927079294770772639785886747559841089671070120102511739419185926825275343129268693107584218806327021288882477748577914215697371729166784288283440868236399459954587383445757960644874348547417850473459042890356424271874499317095341286743556259239705095932387025485711185437452734962326711790258196775033662070121656155183933539103178989257156247756946175745703344908852193344259286268186560067884170926994359970521939453852919421341990972981960061011629945378288288327928173529860414633963687461741921536,21571995110918784658914871089233085747498481392093921476006031602493786671249981878215451382962183306832489322303548281716296137774931836883062638257871799588636736223841397596603236825079859053119441636830060533162035824030490541191082185733831191460351456499274515867869223195196735738841516139421749973183291711819985317821732516820314960505801684638233368245136026792456696584282458766742520555425925807015416047178765452538113430822668214923191463369535833443605844329620997852520039896259519774630621573507729397714725431894641714478634392952187074508209560077240054333035743202911738795412331854359778973195140,14361846248841354239738429614485615020817620015740214377557182447187161532145777460980697522328331383902906916852306307688790083451608130261350491455026208295552005757157547049806867066926847972162187184750531821995727255016828133897770613409484181886065535775699953909464798003780913388918153183011660224430464726560354626850573087079518001579497098985920611294338802921392907919446517107741456227975646401634963060678572780580998274987217038988195161229432595476488751730989311796958677066257365863948226172977171594831544011639884849989931328654207271418544321580100757601201270000125579606365984683036050427736901,3320303882237934822574723730249906877625782534310160672723504685750059065549780868692191634937564489497907122877469551544554741543440051593275714064385262048169355745443620314041833050794531307335253819559894664711581948933864857312882072901440293913927021712377972600011615454373450050526995352982830050256391443830850515525775497974669346917338799122924286263331475349263163070978610950486766234107397409979634217974050928014066919223534136219934067215088896161064759214148618049130963680983012705398939807692207987093138939884157043400363128971664499276483693036909962979142844998423058170845192989653278227244556,11392712315645310673556256100365181042182208368042016535682634838624439633464280578340353342992697843456486856323709208993769929825667198124843256857854149171724638555790573818365215224736100981973384410995558183533272266822358013891089919574254939818330873527463833155579817319890250882056946018928950519405481352273564274138745239339555689528027209630484474043328702633331977168775903350557929023233359205813047128230741363083482041365845075249319178793999005856778680811779083784522911420519825713738930903604514930432327435755406403484491228343075922083298289929463367612180095879814334515830338256256962304365507,16128185768089596194287119128971616467728481679140585100708821051566471323843047828854183726318833284371487280925375797724567335316422823058316454263458054143106806709907496680547056853651764349462358556329487313360470751830659004515085115085503406434144518308588359624087795942838829972724870214686385899497790143468039433972576851570857473482249444251166188717970319339154993972583107254198134043017660882069243167380269891894037618164535745069845632928065376946760432598515015966819900477155552863106379035709861023910264232532374352692943776001019180723682584987138149276551856921296644229421379331608912433891787,2216711622729147643119351601279604576561222476671706440839914460051282496368367881534683081378746937805707571316950268212663028051018612966825594397873907399847514954700788018713085783872783310865267981225782070802491186153117333152717062661110252994273036185050571252614763467112197381544773361260703440205625252670499456016034457927577251901944688698835868136916669160283880144324751412122403729270589464975875662168775295336481672192780137765587777958466322897160031233145485380452023766308429956773283861365366429753738225270634870302712702783980696520536919562785018253963272279772947237341901826167911636277398,14567981249611770119460797088791616882610277285940857160650608249425344206528691122331543913667869847178068077135905754757970717904714688019328854767805335556395966314263235325078374161755665460346725642944725762703818596015903905714083108502634334495870792846224658572820537006327415243377500340330706127007814008821793048336577227035431648149947100606065474813247441707074217050761365292856644845629066245995828609114930249956124849463230151850823327413055370077318181578457937246716760725440912216906628033172873929155794447444347775998977195569636526530564164070920144286322379557192066768871877841501668738723305,11562467842115790891804601373773643847126621903349499609152938962148770984937205728801191644445725158989276699296504193090664088648177394705510081647868491010141118677836328015755807190340752111789458182176683494843129204876774659319228937425442946958815453444622877125277511242659189800732695804577042735408856749044867603169231506434230337165888447884043777386886336176295745762185799165141571995448994795987563473269027183930075484844146542824749783851152327060411300732221330038342605240436682988238960554043191119742665518743299119772957848539797927531910599793668616983919654530567233469044356313491217598173963,14001988942247671750781482079375285966547579414294794319094213847379686940578167330959958747320137628734714588973465688779508774703004652572462868416321674738451567199004872420641775754108356291951642382728451341563463073268234897512437292991864411475522021623042299363078178084134670414407763213420631947305174457007699331702204294303015464925310244650403343929391594959891748515738314022772251420423895070351394216428634037166244804545860754313566530581379130190514697248618490807663014153146208137639940027271688234812971813570187637013722635079779830294526604514749212529717398437104564243590356265592707324430248,22660381208680529934440965587759859630365737502029115748369924654698991903261875827625444059798716389150600717053198039271991446052177985348107490095372700835812383361394955848974961135498980301472468398590372824927166661721168913896457190085269560320077063240744390945543298734163933076390800852847268723891846915780866370885782050245477056357544654583119258014409021504561016925378839878361190561580782875056594285065583655990468688145199834395357403106937935824760810934700883413929457207664342072543405193505090717688282434192414638239406093224709925453132516053056802277292184257441746331824932943075086343111278,20472030140330590554727016751322746521411547021589348812503605132754052870300345339453032427074737788538570891246727822818774891000538284023878268779231690147875265496447517546051987993131805558030308294615301233476549529141133753715149811029684466002817709334036803452074715441881335148948617848448549417354051160238759910288354822541817903899839091496273435021826344319441409806973908079330351993159801831003550379943098083992503486981995525990398355622285332802868604496636639655839747683821735810491234886789689703654299736502370849656509374303361111199544583501333765966424789805698080099714702838932727164170265,2453173651401016059883376082702788558595819343620938909718003743834761063920578770151771007440124157356829685449240956671627119096461094862434828440771694576875873539491082895345114445338009283914246401641276451109273726841868022516636570181871922631150553766823691471767095455577358060583652290109547591748476465162423200240371828509110384977101559949176482932811774533277255627251591525680337416653414697852938946477765739575989782561041133771451257557157756072849234217247160968445068150218106127891386897699168070200218755068578136094949985380806928006246790329032200529105916916706533850553672076045608730359951,24113152339438360498818613385483602121911555739122745946787379178133957345957135620586264478203421944425299426192146461629084303328006516447630615633641891356240907180660156167532682435848933370915136668244592305335752238307655218128679169067763462102575980085156721937439825798887974559139719995948680828470417607776837167245694714142889348485597791698351034577938495332154328968099025912022930753095015877561713107591709857548795164690012791766454787725487399290632750389338230767552797412606609844617222343058516288469384643892784348204522341997782682670665258025662990169755315957866286658684293611644496873215267,23048127989879822710411192866890144848102725506107457207672066933390327615164057701868652098516421397166175276204189099923035751642625511125320886106285613893278788342927698548384268560900735111168363954600824026890037073968715675372129633119593307084369015870114545021114363768521678984746381386414166722200844864695581741219036038918650136132423598216731404838838590398569938445014697553573715959930243891120229359688175340044395042982004999256741864583061848148945179825358319553305735497035945950407010348447423433336328707080153581767979294379351950056937128181379551873194994067035954630194182060875682649437666,13618893464695086149676203128264379703835247962620883770951238013108147463339903484787069986025297587613907750851693587285998342458273645890621629308654871877706080796956646324471034007240766614380367007821000885398439611969420081154359024999574164769946112634981576459912811818772491470799900760145047753530968995478407930477477944129573287306569838212654312701822189291272987922653156057983889008935259264244527455188704827518079129994488508788103513618119832400499449348458232904888661877972105894911067928574676593878643851258312142433749927142945806711403413926146774157545099025460329680057003565864119710344042,23894029291617241391144328899509691451082120805949912944383938437120322549284785238294999166576087704069349411280857670919349460489513399500828536265895125463653495907166485758411354581066514943080277665731467417672021474933030712874768858153808012182457456133833868682464778542510979705494991241834256525297885337509013426009068419788422403698033836643374538850826433098217327104341285009528115639746062522009884356634868057714134080806096522631119686584895158882950387390079669636785522392222833493980203199840117132536258676406629318977553433626720193118379634005263005358473104730141003648560474105109737111011794,8925336938516965008397109104514048184046286665452569746388287155124102463448431342748346308295582163969585477123381674515410213967775651281608577967919981280923720344420733336038269189964575637162708585549385406099462739524026684819607311522399446887121322482655436562521377082292558533779186792041587188361186852658931953312216304602575717772394803653647861926317392730789837892117863267885605817028617970756887793540591824273228108598874261690153175536884068161483807477696239392976829822163308261960542651335245650622440817598987961098884462409657203750437907285145610244236094931259734945402603438305753971150592,11949666259971918796589430623190075546810486453882961593114781232790528357171489136086300172564872735213582648459678932324553671446193373613445392996846768949427585353892225809922873734606473958012848905522095066153323414491640379067553063059327565094898320425802881846169782611727703042073646692303198048486923691657532734229486488161759607766287874080676488615866925028524263799527274261471472615111756048644281578781133899646868101860588922113737985515123939591333283772116702698675273675787772365936701715064375893211337204849804346824788133348904362412793959284749560448461044309070434592388006426231060171764771,22250566339370324059402215781976249391077086920660167269541657986285216346026428267640441435642495757683689137264020871118649281135403445710476580606390835296225377720486579495200200373576733192798872047011357659910138900430140520045889539388154712432007987497852789128001047310532391671755193946030519165629053752937739899959567496721448943588557458516035029605073085115080892712303741049416122614132971525567297514147438256957998569093867126816514230762539072531021367441808139154778858187018499802649090111006001230394761758788797026721593274233504527845651968558769656875733771044784061166465882679811351871629592],"BigXj":[{"Coords":[107932666477475802631511202367582748861519739569035537904969017494701526323818,27810089900979531039053592509940878404833992140356119628629019981009106058899]},{"Coords":[70488850009775279003934303461546816167586319901288720095232797816893086714940,21365158033407193885213404713050228625397820553043856269267720323259910113340]},{"Coords":[96704419145309517259142970140495022508494287400107594467439362232020961329299,76628584944766298203991062873793502752240767184659143342509677627090500089962]},{"Coords":[28019161860991754547254544009397503028608838172584402384170752184470432984674,108882834276696603625351040619123218095898824500661874818668494090573839581587]},{"Coords":[69854419615803608419512220164651266075688659942948825382651503385261699188382,86209865999364219341605400066204025416938700532196803014526015416182305901566]},{"Coords":[55707469940275855599640808250448173151230633312005616373715718152006593734016,71581471827456608524472614862044126332419275513283203837579704443605501341979]},{"Coords":[31537542564214197931115404850756486671358385103785295421162883744455005249506,31003647934233069190792056145926504346119044635106496026002117518163562078840]},{"Coords":[71459743938853567115182393388387842195822211722537627655935266215390092032802,105621264392663357649957909617094860377111556629887291515711877643951632476111]},{"Coords":[100170179262204638729042299933877814060918019584852761639094198183345507736585,28900877763089774489040863107152228045173480683157331262486804734772631569442]},{"Coords":[3393930126761759176345687233491451168543634500428196687848693751772795262696,55773871461934232294712308387072487465508923595028614508001564000526922809830]},{"Coords":[35436174997161384450863357581481493940397620545951968086180770941965008242533,22941476771782647278770334144010957938195504420883358055133977993491797250976]},{"Coords":[20742591764203230819083960194719627433799141307841650214987882235851644570480,36792680781195360005281832466704518433303594582044389944698351592636972852101]},{"Coords":[78822613167932563650341174247543824338627391764838115664582901884987316485415,29305611808246076472515388603014476455888609363718621630903671994111327870746]},{"Coords":[106662917025753316359017201639970683777210765763056751174154469380644107823988,38376047705320523688829546978146661452201839032747402442602961204420046730181]},{"Coords":[50131378328647772110850225682895027165473791107252577081428683178756073747030,6484525664721285218064077598136507537588284647694850022336064622644441747313]},{"Coords":[63814576207919556970263190432671978386229401573575575774195362165468317841987,52351921007743438678847732376277019290979039258214198300788054101141627584484]},{"Coords":[33074537919982031116943260590723731125144796968052633499149040111855190089892,52462876494517613825042650703891412581466209764861573326649361336309483684004]},{"Coords":[46337244846970653814521818706394664913446423803670640514811670889644615970917,60622380590936530234720907025041106487069869976400399621024354043945489694205]},{"Coords":[68932201886808999446322681662607675293176822755681592496851252047161893154617,102558540543641758967834783938704783088913683989892796677072783324191846467831]},{"Coords":[47093684301174743530406169926797075725911173707597448168332637736184121729220,74517549523358620639964596401882412428175945976473031695393603496712918162101]}],"PaillierPKs":[{"N":22709559588116531632086995360614881758145847958604375585917706994116168375700793376291131544827864145364687259129107134734036373558516565338923959924703156876435469021413354399418993619174071015237246272863140297401272631661028437511282301913323857011886496541494453371682094558243513835287198378640755589750985308457641295136946180231598093936765306071278862423297167033582450972276390473663053961764398615170355333807856718875047329620163477731845253445115727590642190491372191245975524943279344261890117425706855830582201691939059698357650223528988243289388677629074389631868130733940366531485671699566601163615661},{"N":23443957150234287781524191819714980056334495753799141564738532515877512840928595615570444488815473106829833471979932833846134743028112638013245259429585839683894162551870479232892081727695293106142145837752188330564435054323350976552725925455074206192778580457152750035194725712966851385101176362564718763658489874740341398176203077931510475924742361380746164713522692182335455005818339528332609035897638651762193188267900136476551393608916669622907100712471489443414455950510417300576764177277906265582678299980344888299166427651633758323734973558749488731824311505669417847053850760848940423643750519510719400853833},{"N":22287028689259504755807149120904050002396020193634043129060485604472139332057712093383073269246020913354970143960065213561811698182428208504100112877284663913440710058603853492628849020664094889598583038642474751945815658301741607940280803922553940685657785019086609257141579057485855668397778602262577280637009340765489166395694519909332104264865369924039797553524566502151933416185073911748303993059047774791584591703105106437459703251723998725467328206119091524784524659754164199098692948259716816125731645175450298738430174307931086107554346505367596601043514472572775722114263120820933996056766066990263737006037},{"N":21778455942403717802437188616130445569467912356333711523204106321468333958250985526522676150458521139952234508699903096368286173136552336834061186195705878795885628080532376972447127537374960052755412900354192740274699607194495256559382391407619506149746521336051948176770581697936379025338953179299724284866217851767053361169462746892201032000776732741861429352495405542992367041691709412944529198233031428083828538853890568987466209820731450551650370292813109604532198408719181905952928419308306626664706489746484860069309396704199131581338218405332252354539932883923534658047809067343949198229794022084007329008301},{"N":29488834801717020514549557511738862835006604218586783270956635930974777840977382736818004943434492491272083417763033198615963445455042431681833978353867438176815774128330303688651059852719975859250721567522453513175104614385098138081209372251486732213899964978141377939387124226524201851559541320231331748973500724292675746395999336271645347092285737228923411234511145980962423027637945866866145915490526131803713409632083226573065035861386075817821231913413262072294132940186959486615122177174171466978866072639941945123654758187894442697758141328636666389957637295324259708835849664958476600091423260629670847006421},{"N":25268781854018641821625117526035412649921406362359871346957405856614663043063881662682001256500050697385215601589085313282671061645985003913281457834036290368462929918763869754871955608135979298238482437377851913552755913815405018774915484866488142406303297444296659799278477225336231564636195441498040062964451813900346208766721654100661710718867197194733579941984196715209521167970358227552984230489600141394198144474928084583860744656840175887777161454380202188440178263993042579519816969496156562013371732648143667185817225623397113488180419930136011024805515953457443050643425221010148081098971618629282508806153},{"N":24077030535873838147372990238338423111894661719881851208383511932936303788667059523325649062922462968249640702042151293306587810036594125879862518141403476609262478705296844024060273562609291573351215091787555942245982552314643486135981274381916357213038852978171063476276539384812002232533351978097782562939609101707149234139391638125337919614533689982228496010017193463462456934753130533077727108799001253943486336718218272844533405886783727956436625979626270665501149887064412642510585330023269746464208739229956710668053204092869919317416558618819105166451453240320574158658174090376334547079951345889147202424197},{"N":24121210025310295136286367465067731861316363403302816495348899075683542883649267862423504534408270521528934904000166037695519824119622953526124849500602533136680339478221010232315859804261374907195769559713293619918530079931895046819311703445607618111244570268187554380693098539122537784889700313005700764528116670706472264450599583329582635827622249925780628859318211609939169828662135675938640346560681426019582628979275573701346775265344080547061237809761964885298244705276139799178175782218409921284339726928435810584460742981474010807766522632224843035722465220411812727073796692626221078545796203402892726398073},{"N":26956782591324520026471701264974010002551430844929064558517606333109244333104364565707985261498791802440691867651722784210280888161145432103606824079477489895607158911928686613189674072708812330140444741131333062722881890279580684791181148664415766399323289281546841599984936640417820094077391333063403828290767644884268872176714175866593843027335088472731880830448148161449695591865312724115778446298294191846018327598860718546463796845910458753293225328770367785304521228332493000905274903063796918859478998380272311510096333363160486944174426731511854410356169028732110892177884127982236790065871058497952170624401},{"N":26249557760815986852034237905417683014048371748204856284575862917968310785883486514046189771449794410062311941320778404041317694258818896788913080156960590072834802977027251267292982532721343074208805165986815554608059680417209847673748867108719737464989377176319950884300513507127044766841349776517208994115342645229445634306184178062065483947743824551463650982111893910449653832587022792656303977671598375329018430362166017195461057586254287305421091325058340750141735758488815547176349755224428765382123772435956499576803085012124378000542928725389368171404677133866847871236251441021957443853014282022367009685861},{"N":29234737641692976595774236923019314216135921756073342884203680618120226690739166288052322806435356115092650761656136403373733697692050475566331202817414926309882834844059857181882811689758047525443057988160495074334079542319370840285641441603178202467820462588826229922786870937847036888109767951604636584098102615282750014508387427358079100450062680715472456836097388046216848854107984658532128468648705497171277133763535425127577293318939184956565230142817502839346792604559307183239212332206857888330805061669830296766718735240517983609617995793272006065303892130080909658027060291496416496673503247698087863812741},{"N":23656386949781378983561509210223997485938600678969404520355733863050336777307520388106184053630795530040934267843013912848246799628076757878172461266778291537251825140340096706161543161977283845709058224884977213986434571463756330276479208682952096086332163009127424608568458165322976353036562065434426650045708578336603634894217912009997772105108262453019882143577371634194078714264992380438885990335741008955488808069468796086801023973076920357953123958081822096146124559004458043648352764252390085772923647155984579633692639191141425745475545839873632550694666801559519849238477058285069280151324843991596401646381},{"N":23799985430892428550287426639163393896421663100337917557737015159273107046495772196531619480943457572757018895004491581880198797117841320493538657520011738472038586707181276745476787089472101888983238214242261897466709975139313526918983914349699164310009561585851364405464439780111046692215844366708075439030620693316351016954915727063684631173044817825576871464988585229583331260702104268887569088888141481975510438061934915565917441018736997897082388887244599485050548831301667982348795441755679549415459512278548728977097478254566801983960996625453970296380670902503277224729081061542066926552900097298958795919921},{"N":23398981485141581657111580810187356464859260220476400872431878471724619284703169207796437272649895475435460945312990810473873577007856956495840504596329080928974891464665270653430872926713471055976901497303072174459471872022720981442223753911960555794844008812776454183058593769792366230853507105586338576934054995838272457499054915439455088496111012971850904735289245691042597216634196809202787360353382667100073960437339209464655220130141692780283364216457426778903461083049390591667885095066567970867147659207581183606534554025283663685502553767113396678790806758816850832944906936477595076662914396730813902861273},{"N":24645804484208008107774215519843481629641338685651268289287772114412526440944111199969614165736177320304962312701073205538949325003439610780511806547845684862319242490345551374064725883323450769869814834613757570218276860284970150303912936880248283750218053176729988470901025014948637258535944241625099061769802348376561541469733700398108049774899180411488580995483844861534070436865153589414051441506488195269353530135159150725450897767102214976100194473384482425657735122085724544900424323758582364844065404991831422328546732900258700279735848044809564185617079126240413557300335393565946088211107690073344594774029},{"N":23664465666512928010084076006211208070039097235865486451752383277009646489200010451773766854885315852604650109050180997494686499532996982524560956955784208153283884502900612829692080614937231941501430129101050170848135543483642879522140453631883679490750446245717832265221232589489474380464199065201167874127465810334527670252907568617820949350516778153996202871756067806159248004814563340677682071536108582393686279672503548392243690499337315202892692273695083478754736347613219568092769421161385508903701795824994052294039246344316342377047969959511601521901736714883097032290625287691937066549723767146291790114657},{"N":22165609813091667259068375406991183583538522584875908765309739098448534648989953434651686788146626220283972510122914357995219529654582068510398362007031593307847827533082059785375352080923687640731375327188268078188971415753864060723639564145551626769223269559344648109409611860616931934210627553354435590764505138165455042290624193631088250055962033560484870481238850988856340320616852463026890656813658017413542014132396994215496811530247375977104307808133564653689276479112825279061966541271092780066027501498091088819663615972345385914896991989394778860649710938578818683661928070093400675043514978345177529652389},{"N":24352137164919775060505902875895344669551891343219870713119659495462675754712808458066602996522267529841963340495194383402601416044030073771848283771276922546693343786778909195920195728052430645791682092298169597213540403251589258864324656830830912032021695409682689693414793104678019843226941004344886835923010707685858497420014814885662783481710790760565625597934856999445792014460533464855807508832344902590088930105318969772303090927340774137226985715726042801943592444113021856673268564036683304420372700405680896320106848396385562893886698977710031223312091933030330629827691164100994176634674536649129152931477},{"N":24388425323514301995345880181969195093222141730097776998750148283180811486102209130079655780738706237274584643472954914248041737365215477795339570700387683883122567928523036945799350046333477704674538444513982433086664207664876244841911099162128315338715496189423824903190803189243082722638413039421880070666657272413079871744422617706188003161639646693501252928939859937588136677607569634910081471599993513483449765647227570734163189729311880395414909879933139619835138785852476313690881562300854512419432999005203281002911021482679309149225773391703345476483158302622073477221903694296256566718995262186459619480089},{"N":21604728584405813409256303272593334134333518895675489098410576803850613670962405878762275711641486977471395420657043551402890823783906820971712770494973201278527635005537714974340519544361402189093858595896231890523544098157276831993549216761475195055251372273062282101577640320665049775934814411518181030603401788639796770568692007642464803606076672769360069701571162199680486773757848273630254180550410784187377722267755203781450486589090106764541644204842436002216866597611146281471192249537747681020939314396157603364418120170135828923470079746789793341042476885118587449440114091973976013051496269141578521399429}],"ECDSAPub":{"Coords":[82191134404558877049244897640959846424169542769967270904890689024123037541855,102677683688073592669768840687667774566029618427936181452214529135934890152533]}} \ No newline at end of file diff --git a/test/_fixtures/keygen_data_6.json b/test/_fixtures/keygen_data_6.json deleted file mode 100644 index a1fde06d..00000000 --- a/test/_fixtures/keygen_data_6.json +++ /dev/null @@ -1 +0,0 @@ -{"PaillierSK":{"N":24077030535873838147372990238338423111894661719881851208383511932936303788667059523325649062922462968249640702042151293306587810036594125879862518141403476609262478705296844024060273562609291573351215091787555942245982552314643486135981274381916357213038852978171063476276539384812002232533351978097782562939609101707149234139391638125337919614533689982228496010017193463462456934753130533077727108799001253943486336718218272844533405886783727956436625979626270665501149887064412642510585330023269746464208739229956710668053204092869919317416558618819105166451453240320574158658174090376334547079951345889147202424197,"LambdaN":12038515267936919073686495119169211555947330859940925604191755966468151894333529761662824531461231484124820351021075646653293905018297062939931259070701738304631239352648422012030136781304645786675607545893777971122991276157321743067990637190958178606519426489085531738138269692406001116266675989048891281469648801521270740579775442532197922219185836149798907066824279431634364266041952380744479803933961120647029434424529473837635939606497815813704639194189415248814605514291304146253506447668815144601241650843443430341493643092652558463368912505761611974134561302574641487824146432693126025806111868307533501365398,"PhiN":24077030535873838147372990238338423111894661719881851208383511932936303788667059523325649062922462968249640702042151293306587810036594125879862518141403476609262478705296844024060273562609291573351215091787555942245982552314643486135981274381916357213038852978171063476276539384812002232533351978097782562939297603042541481159550885064395844438371672299597814133648558863268728532083904761488959607867922241294058868849058947675271879212995631627409278388378830497629211028582608292507012895337630289202483301686886860682987286185305116926737825011523223948269122605149282975648292865386252051612223736615067002730796},"NTildei":22663176204438991528847068755997123453980704364589354833944958947785385672266299429364336994892902925142195136026995771544990684289261678272550855925683439714148609523477977179010696117909805695701859018966669150739407573082987363056991238107146673103957237104655136409343763639221993038484198677605284199701204669351878989982962102150055730219424526668206392140254467740757469800556697236694088468633665970603098311956910105499246381935436511205439918717236853087415401432056630404175846159692661637004967185601880460514710913037913825633119857629058574151126418040291146967097319384900092639447317903904481362864461,"H1i":11928753658530568234030789407795275088740952723187227006977773559909074576164921817701724786519460916583196165018163510774039491890001017299531322520325627826211812869166690445989428530376091680807701566180854522056382923625327483414081231404244458202347765643506681512770879868073522880161513490523543914681148241833246281106290736532685240004675518845019764469048182810211653160870255293592651339935498048137995182398802459841631852186888112285076188858851763824315081771524248572039785549974159773606819792419731561145595921289694471859455550756883293661073453125644271107011011223441502328961618975292599286540534,"H2i":2216711622729147643119351601279604576561222476671706440839914460051282496368367881534683081378746937805707571316950268212663028051018612966825594397873907399847514954700788018713085783872783310865267981225782070802491186153117333152717062661110252994273036185050571252614763467112197381544773361260703440205625252670499456016034457927577251901944688698835868136916669160283880144324751412122403729270589464975875662168775295336481672192780137765587777958466322897160031233145485380452023766308429956773283861365366429753738225270634870302712702783980696520536919562785018253963272279772947237341901826167911636277398,"Alpha":11888951731372322692587446144529102075565441761140289360516328872183399895399018409769698885024207799675234253700032738853868661359990506035267221102774423350313660944034314003044059763047969540015844476458586288856812268557308850918095376021072201322288660384178059492278027007139554343063041210209401615206785391475267283606587691630173685130175363163767364750897733165012622444607225092552719381557214721345255451586782086084076233145715984297460738876003034094225544303173929696825049657639568773955777982641215606024963429422768223282772798298911306472738844824888671156810025377989018725131047634303505430729776,"Beta":512560920112229250497145049285999938432014576742938130393299641489040694339111294587656984416638380730439054939865277880440960552217078726634039120521862717216326557148825650713536510700137034398533414832791960230916697590478059155443204446927775303601714873268559396935985125371240446512377294957630393824605663637989680254213618462057217872928049364342890609035753971293425880837171588401712359085726835399339039047554487160122524090917418498397904836751428546407375175317621730661470115233692500208468130581583268496393328583603870465996920109324177876381568478848880529803131246797117223604748408902659443730649,"P":72041729413302591552207471426094715914453985459591331761824696027062555081527597768382114584212085532607113620705190706482097086103049755339153402626076858011725582398419625964669245065647704961266221641029841394534276372536757776794143408885673719879751849515790222854011723961835739864544896481257920883063,"Q":78646002771604095197183608537706047022796068042189465284720215469290374965002602354750988627469597621022586102526576834686142294790792327001343278125432473635124383452441739286581886762212929846250865226660979014080100824846822543651525175350989782722728218599285498007052028005152211110078474855161699011521,"Xi":40587314130148951486212116337454254774268337419965074814433136748330711140023,"ShareID":70024534756929667616115849317753032895580033020239899587896153938577578972755,"Ks":[70024534756929667616115849317753032895580033020239899587896153938577578972749,70024534756929667616115849317753032895580033020239899587896153938577578972750,70024534756929667616115849317753032895580033020239899587896153938577578972751,70024534756929667616115849317753032895580033020239899587896153938577578972752,70024534756929667616115849317753032895580033020239899587896153938577578972753,70024534756929667616115849317753032895580033020239899587896153938577578972754,70024534756929667616115849317753032895580033020239899587896153938577578972755,70024534756929667616115849317753032895580033020239899587896153938577578972756,70024534756929667616115849317753032895580033020239899587896153938577578972757,70024534756929667616115849317753032895580033020239899587896153938577578972758,70024534756929667616115849317753032895580033020239899587896153938577578972759,70024534756929667616115849317753032895580033020239899587896153938577578972760,70024534756929667616115849317753032895580033020239899587896153938577578972761,70024534756929667616115849317753032895580033020239899587896153938577578972762,70024534756929667616115849317753032895580033020239899587896153938577578972763,70024534756929667616115849317753032895580033020239899587896153938577578972764,70024534756929667616115849317753032895580033020239899587896153938577578972765,70024534756929667616115849317753032895580033020239899587896153938577578972766,70024534756929667616115849317753032895580033020239899587896153938577578972767,70024534756929667616115849317753032895580033020239899587896153938577578972768],"NTildej":[24366917239515824974480442558600034492208859976504581465004349103795399783288421050831073024860369440303795551299953821996018530997630686285237603133194573622718124597460737572013930327249120648302190449742363261573076443183981343509885970573178298207488759436277685910850783372123719807298277837194569211839837465137044422691734879346883675317045008891659749391963717253895556693016508386391015178130161988317310806894350108084212611277788190739249760699147435109968242744158314817905689533615803297627887736048945645075792686416602832677541152918424023805280241226851534199867283487943291927564365275467582581271053,24760645214372673899925400730945520473062951341429554908754617530444794660401836428698520741646966955149111758288194803110363170964340801072472223878272430220722034553855593944561986134993071918255771235073978495918874383067260043443905506152815841034811512510858407909698555608803009379935760654878372301870950275270724586431009354962811874333750886958869738872804882633350285507993032763679234057221556156642769183354423672540429587887851343483914923600996425040023829456198369968692844034517720322057627565080062766276792221145223750390964637842847390939964073972850018793739320669513533403812272268817559996728177,24335507174653830446370401218472354012341984065893977351232759664219171991998539382418393419142907217562914494098827810315198583692551476438232634594991137003295122745831430159532586451010818106345725278793436836406022036374386618877645773128457664942790386603953998246404350465143928182109615440037926218085391564421745517307996722808502413850991173460229650178023548969664557299385141472097112836353938598657235574893430259143862369227601052831476146199261368117297723539373329843815951236997008000605506966102265798289158763516254914284024816124992986001907541315389832578466014006010753144367487203071067653140017,25353120959776139123294155818546513426444543204238814947681743626639583989194265533184090862296087842527526282860965927846515276605818147773016966742984780344247645856238734726222917730082852005118152200740071409410429096265046046476115230269737050878141459099734884888260830179970728221214610731604157017545322535971152193773221758709395769765431078738204491094323008301356895841037132747444047830530409305765562694358003007195242702308043142399969256485870876259711230128209178441443167004632638027691911658424285106297785382963002590496015895572427776988235599297735903480964253948429971597628412447354914215359401,29849885402332341621158797110436829396646924395042456662853244309209629024048299162272105169817115314715561658954210859089958590864101117136365470947498907594068557026997249170993874294161892140147876022164668279854630146959174794473879294364568105935870579392660025720467645329300426773479121856766502569984218591054914763859996476236063750210092775547343099066989888106146219058807079888624162205626100491953381078296178689026680702514982189001052448223393538379392778307314168895065497502603308074595916000270844935723623383768691838356870704054233137068509668072099435779943491520206735659166266930856700483211181,24303346306264095483727907643814355785838936488512300414348142784703917728792656928355740144163123550572150171398192480623395181408570425672723511597546032812698562984141032629389936754449924613948711482870260420456913877526422469201798411517711928654451945040790337077196569240216228957228264615761147375423719114756511538399142649755527243797217920772594702713281103939163745422429156605226253637010451757984598979666631182977221341184990723224510127460146263007980086670575857365789365543477249518437176817144448210584125518855115672157465775432933601089465408090382773104140011964681476656187299047937685144419517,22663176204438991528847068755997123453980704364589354833944958947785385672266299429364336994892902925142195136026995771544990684289261678272550855925683439714148609523477977179010696117909805695701859018966669150739407573082987363056991238107146673103957237104655136409343763639221993038484198677605284199701204669351878989982962102150055730219424526668206392140254467740757469800556697236694088468633665970603098311956910105499246381935436511205439918717236853087415401432056630404175846159692661637004967185601880460514710913037913825633119857629058574151126418040291146967097319384900092639447317903904481362864461,22214406206988221120543596573138808869312423548073528052574227838235500966558488375856182495656208729058219131190228351185002058116343873479198633895772314072671413818939926736318457089940649635331152484030046857163634723835906012553106874988855844579826872824922610248380139635284283310239564378546105159549071234915504686574306652852285495484227675227079507874801353534124836509674143920296971261218965184384289987323806590503991373066703353411925035343072343417173322682200148341574699074894310006001608609036165489022667366737175975429277190015768847957906950063130121905159960720849686267420829596753652148430921,26992054981062895613627607261766199835432715284801801749398907129229048796737348701447929605174559094984645968238323112325575430714478210726667128296579144479334211667227791506349731191531989884599385537951555136889431648507040431760656554949203843341649040209953028348323032563665739842658324687215759862340780391326904566525914822596715715051383829453805370490781186878600411802395931887164480044180689343432959074712196207660797594065685195126347713904229309636698471250350144098081500570797555478540127343168177689831999672573508345263924360426808488416307292793876390765153143370885661040432948994217496537757037,26883601429347938201866566412436359463282736845136879263977010812101340295160083165177085686402734295128738223195845941394861534416081222492334460738589328436684156816061652087254848610272225814333318089300032442695939753398569200283276971829978683842747584203047240258517693679059389343721225356421724973291878661622168915849085533925700422984364421907650824486413330797840743205222070155228532990351439410717713883609930796830287062705670943579996135308824473851899048361474382520461452309816639861239026761274994745411785747289015653392872405877863169928875880404134872170564729075194783267248873823339090853461089,26675898204441883357756938810501612911006923314113656530850642169244358619346060171584915468088311545710004060513299980257359925141562861692364285790755062927815783069742814310907363159744172010043214941961935176791603921250085454102936917126214113873120405883118273636844903335000473865105148550590214462929117780405311499444885924770449779157142014006830224170685309315154438797997384633339817640551850145502452900467824909085498261391267709054450200313476628713250795473832792093350711410373115197160491274663551092524073340836221397352664353235247831158949819050115215290772010284539607969271690219902603821582657,24003425727589170532663869192322030538943945148822062399216337010945961427378027710524236529045097740008239529891693854573603730323074574387306355517555029571396270483790272731994105657673718134894396083438028861748333502807033025075738141563799251049728691667635160338770958887288469952328987442729682278796947289053518986771911122562542149441355230810099948748099507142060010177281487688268845292432759376770532767245812643377347484905682286529844081415426101824234408564247618590677966518836555327692461478356122297916534505785216531638872958168430321684571355170353352724268927780693184938724886624339722183259421,20030939948791694094921106997836532434578994294403521371501479100010836848962747077471607238761388497679145378822499150459403963802326636975589780084279335637070321781313502047027883154267014733038805978970710176410579107929485519779112034850622531520287022547371539439386174878773544830750041302618611105173361798826270784808992652396596786821436733488377837349284332001375201088424331364286550732742247150161681889289004480841207149941594126907534285607712061943572341899739867922754683103581617612214747009636033814762750497302268078808823665919929249386647148964298452596399586628310864464196272071720395192133489,26870132374951553243581913321377246229771795848056596419360924847337540300978229013002723427615100062690126686631934134732102152941473371391783556453709425066357685692036492637888980565254013131275256724381428020710512422112788440607830591932440438849890272166273212125255293837259298348084558313308788645038416611482549103781514142985867750527012906984385110191046837459757808864741583473057341019452578423080700589131792924736182910584032669431737863108910781465411300404077532371983623221078943741087750842713540302692591604785862604978245628364756611702919842339423052849035969584933072813435912401288087398604921,25781309885353513172762417920559862373653633766198016154431702305819993747433843312735651525316421555779956949217599915608247344211910767561492880228357017663462131839160610108626231391786518524635537763772771732022138542377442385539024671393136972077400774477946909998449518641822004119697621239956294809097040644518494643152713366295240127317300380586618659118989790014789381034410565903140125870883802621234783419468923863900036725871332435066935174631607488613764393382263135690909855298574769132391272005233712859895795189174927584736869111985784832037628893972777670733794612566699959726190117505644366934694141,31307948529511772422092081620376528723351660195178245630091738647550584183808045529448767036136429258045017880313805169530174754560039519751935200016137594525166410173049351154227454247975670642857061354284229524586536451868860885813714578893448403685065908393856455188372709054731049692863370865677701391460552630927498629863324809550335559817235997586126538332699529118621351625401581293898546298753212618743290610874832103267345624474884402930254336353399762494911879332332316505133643206864735435683656288655072941785814640312959405902536938955107787448304325831133755028455554235924936888965889253927315459519249,31466961232199038206393986199348595708256863299176374148227521484010795684260339468184532260347996789772040097386032241172658309499404470468218492541809815234208995118730337303514831281668817831605535229415260143432704661750281094187807328676322407373913844432440683972812394664524853699586055958635280164067281091412249301309251915772998531080870705450343112678791059297982033179252277552572737658097615320288170699408198262523087724946180097295208523307748556241283633289461565623961341136472687878275672606572269060361808996126027608464429012339688636176786148346418213288770613540923635302757146988963110333316781,23282315206683722596094270562333648753439051790898100314922005841725502497093211800334393760989042727597691714582193235713639238284172358062468387217727181092939568556559834956352385929118617242221861532950969685568622107078283773942779583910577282365015752267710687089071780861330758005577221151609134583129504364837341221471368611555190375227501319216183854908348755278500330379812379883892909358375120467449644585220805660246421673078936109889143381498767668445860590513918867961598096050612727306953235332046855083649560662539716078578551485777683734466740521988744140757231408246451261769915726695959921765032997,25091337650425677853684475917739333556784369056148930585749057080859640921803414967035499248336819782755466354804640016025044002503128223804670636762370700960312352761126598625504662989187540799606658080278007629478214427447535566556662347722562243890754037326739900472696108231869156013516647618154210840364364919089100138905499001603568088340085110153219085814807927945152975657929969505495173887189020701090313994816079981109190512102678874334588894915787220152560380696231794377692004958328931143825599595181025003997691503128188855105160353707735893011124272774335559316106266020514461879401833904958202494061001,23827659784682250604442454473547796888740733968924087692522596947210995569582513002946432005898923676155984614087332560259943866897650716815951119740918614656692843602108809220144973266843900928325168304104193270024169252614460073574472494366384192690720704949267653372513388389564250659367518167586555169618994627094576635848093242114762843534765611200879960614166650643590955853799316870443339993391685970472310294098785089036360647811365521892090305001153074254408707786436158648387047030717269669710808288303673434511182840032065481730245714970751088620360458026112893074508503440200554493648329036195258926190733],"H1j":[10024025457847388392610646066298514243370787348338532750631360639913721829629888261433439914402718667116400994500512300775136069581637894623537510481269716297031115527602912311323880048384727148486222115704187210174101029381357780998875764924841198846224052749406474209451141960414618133437662859572202780961023516801781475926753784006105642819239485607653090319392184244933555747381471676665633830261574288841173438644814600240117247473386184548108338325639763390271130259071021112922069642676901166841167199223435257080313456925802886649375691201308332777566495693037805296244451983094124223174758130752134991251259,5540062908155010932513159905564312164946355979316528931149460136278288806659772940588319017326328094974853633874382463976169195549392127817304835111543615409573476314059060881338397061412436243810139473181382772109210271463439624149555390649740374635589527762045108740275882849527695527198385706268316952416235237543464363519203592980469637771074904708426157233888490918907104014536294284692202685017252106362206847500376336741712522098586355602155374318553270307953934712780754034315941245597336144803859821983984428471938659224631751193248483706020880124594451403191977963618445462632103562894369717754678411970157,7294264017980791887588541945948527964732046841763268733085682296431903566128312881527716171471646888128877802321111011007465120561544014131687975703500639986893207003039277321438260744935109724584373350656877837682253991859961109267518971621013884413991023503512551591742311046398421527897782104779903020623974791981836764750802585775470044046719785755322826006147242995196401054126149520747563133877218253475355114168420889541015916952420416242677374123641966631897855997275959219115766326404348502491490713975699304986526310844436386187304302850704361098476666746013218735172029033252239873173053183420490728457969,9501218113444747046512167891740890620022448184208745016727575118910400114702536042272711158066289559244823855716406559728787015762712355980741317225927051706399078523944764818407725281098361563758658548109686452917704268397282493394145905917631338144130662786869889947744035847462163212831976185178442327943506290185820473986106267053867388409405767987475830498385924106417897644176202343305711004215516685101951487059182051580662118563531777396290757514364141633090265347173402382594862836539162320425532069699769291364183133350523773491418365804493761877536170212947415911627316964969637971056063543234131063060179,15798786414829945409990379475347092437191933825852017565866427461531342919124334651290935627606571949258216191049074056902849155877229528326934734579833314251986756112086465450838437292200045064209850028597082873902388658379469441564667669701765841537160309665720024332706155566138689213961078587239980763899119769146527020365437175547591597253422987241897416697834718145603044863506510817025716990741255205962477142190641478116356939618991137525950385435749637759382858607750867147376236491183474725313362128439752969796168290272602393139910089130691220986679844969299810559606706770072567820176650336982258175656069,9335293725151276608993402038690349490322365392613976918346481216796454921531989892317554215286413208524498017721329770260220214739976276463115767516661469141467987234112799014449837377419827917305931640946522287484467505347102693011074644574833321939291182991369361351550845549986196632347752029739003400876962371840702829213086378506709453044627207644282674209652698873675164479665879605315024759424379670463637654094152277916485019222649587458037242630015801094579916767996040360006216068355347853880839844214694922100092515535187976540400673364286904799817798092386690711558542096052961324458158162316849747049802,11928753658530568234030789407795275088740952723187227006977773559909074576164921817701724786519460916583196165018163510774039491890001017299531322520325627826211812869166690445989428530376091680807701566180854522056382923625327483414081231404244458202347765643506681512770879868073522880161513490523543914681148241833246281106290736532685240004675518845019764469048182810211653160870255293592651339935498048137995182398802459841631852186888112285076188858851763824315081771524248572039785549974159773606819792419731561145595921289694471859455550756883293661073453125644271107011011223441502328961618975292599286540534,3281434421303304451534752490245528887879239197847942017450979313729063086003376295872507109217827492860554007309921835555072782997029442232019030164252143769859146809734506916627953872016140383116721175515392391691229687480990552997729334078523811275423771755788388400181281035140972235710503768780977567025805917901565574387698038208089499892809008311004708551092635216129712077377038639345772519472468677180077197280667928734700336917165150723117546746441573171713790905181182966896063824517476166929486302044010896828146903022644169171194514314475627079949830761751962833520028060036397259454122764395181619471620,26798335028033483015595995885818313899416775173626251303214746152969095667991567148306665607431284548931904800914249634868412622200397325111043206330920355980127737464934048444736064518743501106031852408038680600709174828761299003903687195970226223339349891916494477088540593890862438659139800883091968208023580402075789145180476758769233643214633776274238005081673345069570155874633220460290011162900873068065044353387042255376321331197145839355270876626896209116281706932058419419985043694684968787877580180579063249938562059688827441196772120556845945709093021801017783532024267437712559776698525435075445312453530,24379152218258906482492311550879222904032299657142525355457269472724266562417862087603238266608926068245433152992105088073531452805187189356790567435332219230651301413762858849116755355885877930185483851669316692179467165059725168458003778120562044911094551614016767541895327106348965256725682881898632251239010971342586248735804355885933092854432575702106523584026168029150861398417670162335859972289331761535391135324650197244391340985538289280848512779115086784546807731473605687728417756436783747883720385660475468617431753857425268742613699673867257484976547014884809737803594445736805689004998882232608324939099,13639308363088689304499602606006748747737150113207488794697369879342136632158898637529348398215211110838650184450613858330095458701807309615170814350482223259077017423473614957663630359321153124867291328161758174033028972972743424022771180662104664036306205285576270109455984955077713540350117086087967860191108122028954920957836754439818988959156002918996099715859267715547983808966864149367592758343569651869960032231333418638792990340363087590766121964019626938526976202582697949104351928836667810574924696014475214582129919944765647849262874087078594478919124600690586319504349329877883243753775251538124197406468,20806324398112704184576243642308446225385834167758222047710915865491553221121456559290405385050181445190026351137186843498701962906728774890279265822922302262674344261443633266351787522423584433088856438680222017039801221837510594012303704942258177163584539612102842678739854493210477613035711103258550560273478479277362352841578985334600196007452719273341052878795457240578018430753780869150598290734861026318283861569123861098217259089119729724503263571923384603566241538064572968952230647186501970761685868678332574820155746476145383468962025352911125509572618602029024652380792594855032573631797517407433780124767,2984534567830588608251691688517562019886934976940239944296177755224193834812017598586976214786265618202828155437088641819872658344085523203617440122990791586663797768559098311449463943487720199704106941788760276946864277974792415345700942642550277726023952217616537482804161899962996481893200668973584167349538844293867619144628567178172496162265433563681342772983054368775009029385174850706677287569940753312983986212778939947598815595002848721076684937312652495527309505744053588382568512842786184034878250903582357463020880854201625144449160004603244837252628379531756302498757122746553391615927560808029960266625,19681285575282653686371866964026575635551812532880664611876190222601081859688141586553347439412758942096084877111883472375168961225184324383968489352875717670106440217006572540605411871630725641391171380023993395232691314662393923848318294382993540810449491616527524662991307157899373490742858664974644838212306475173795164847929404327886006104677091872987173592834296913553225843321065615965897920646645086083927169011172363123935140462214285019059726271437492418936191962060610764641005376370506280067258828239222704103600176916708092576268163001234852617058752894380793333304339677721072271552272594404600260363861,17663259858420311330651766819499911841067663794994694318257191199872170158137865025958007148817857781638492835306514771303332749042829120815317355608633338052028835394702531720709875380635913577846095483312528431723891955957026638053673584169905737554185634030129649039016018518994356839547241764882921390944931575304729587593422442361903863687010228628846862342208853396044641495867576785861723973159597871732538239253298128840563941065388954934551651787261972744712209405583851147359110032083949020208533161960188954813739180009449972293158373021060141688387818302891372350131649013502869609299334048318236045598871,5298970575809274629438935393989318057761764519542767586120836445032263316761487525811021815951911099884013107458570792999455520743412617129043815044943875968069243444902286481323598638834526377417104328855033745156522241109248831526582827196555064828920153555458318257230359794631019067306886747836486535385255549193636393132450664433886493509087281083390290568729201571601929480774638279112348846248022706481056446460853658284203145411150560753280109970030570227674159359532427547564201906120131477615407933400264643596572008335881981150704968737407428485573362254058660832170694074403410494545950595818012264895776,15913403370317249903846545253264583237445426368566054050873204733344285093615027647693061965382356514660489490017289737470216855339451599323161686141225364898734459213317143215419647354792387760477998230133600223913390244574171627679693591136928514907378143973333998319592583595882555481681002615976566590485876365765518571760268938260544608828017208378436062792581980653043467844284389159435925884731521336805223809049222649874552372676573497110509098941429212961378401761184902390250234585999298135037647853709390803265128558710383431672409386841314821848625953345836234945114508861921890833145094378447829164485787,2290909140884019351426250008814545735225813230804981825833168241438120125584365814035371010990772186759925886882837107545743421629040643022748869446583860483172598682089887676740059939878553272595424436357723367398096377972698494175572434136161599049698027302739164581483237687791238697379241703838109655701932792883820617202754352159209515775921392841098109717647668579384288444138762640166641466203925793570935398566304261495839675905915184706531257340555764797653386663178215604213661066377035729358506114543600757612373813217341582075351741934166661911856401287953329256496263459473595206461438549716253839581620,16642615813361835581230500131246118445590603247887791817817316273244438476256311337001611675388574331977410141699297630317377151836311293305027088331310025109780248001730816502531361314291505497281231329646213545390817348454790771602982974763540004526670479533111992035177312072478629306988622806347623090425003234077873805375141062348645927401285345899503907001825760439541705306585854742931882134500925066002906885338189163552908934604616236359806104007315451823167682352183241953279551520079950202231330492255621315016646701261669501844925563045252616708085163536257987840050252877140816998011230187115088535718084,16010347999096675182232092054526583890655342476048555695134478148077646319292254202928857709848426726687922101503995183630866920756294444357812738165670087524526688577215556076807546011943089084967115014780281986236650136100212790809186133722139336439667178800133917927993914606420172087843235000579778849526996068548810587854703520128067422195406060143205277668392537421614569464766336104310955572146529110182880365088792241394086157577886083440548786679580400292545275535505024808973895871707731827445166453079771165377996477241584002682623055073167645192536278061988188027824852844065261608054572024963829903461213],"H2j":[3368171208877966911054339907901878144315427177489764716664525147952589494997571345476952466465636584372230416806643927079294770772639785886747559841089671070120102511739419185926825275343129268693107584218806327021288882477748577914215697371729166784288283440868236399459954587383445757960644874348547417850473459042890356424271874499317095341286743556259239705095932387025485711185437452734962326711790258196775033662070121656155183933539103178989257156247756946175745703344908852193344259286268186560067884170926994359970521939453852919421341990972981960061011629945378288288327928173529860414633963687461741921536,21571995110918784658914871089233085747498481392093921476006031602493786671249981878215451382962183306832489322303548281716296137774931836883062638257871799588636736223841397596603236825079859053119441636830060533162035824030490541191082185733831191460351456499274515867869223195196735738841516139421749973183291711819985317821732516820314960505801684638233368245136026792456696584282458766742520555425925807015416047178765452538113430822668214923191463369535833443605844329620997852520039896259519774630621573507729397714725431894641714478634392952187074508209560077240054333035743202911738795412331854359778973195140,14361846248841354239738429614485615020817620015740214377557182447187161532145777460980697522328331383902906916852306307688790083451608130261350491455026208295552005757157547049806867066926847972162187184750531821995727255016828133897770613409484181886065535775699953909464798003780913388918153183011660224430464726560354626850573087079518001579497098985920611294338802921392907919446517107741456227975646401634963060678572780580998274987217038988195161229432595476488751730989311796958677066257365863948226172977171594831544011639884849989931328654207271418544321580100757601201270000125579606365984683036050427736901,3320303882237934822574723730249906877625782534310160672723504685750059065549780868692191634937564489497907122877469551544554741543440051593275714064385262048169355745443620314041833050794531307335253819559894664711581948933864857312882072901440293913927021712377972600011615454373450050526995352982830050256391443830850515525775497974669346917338799122924286263331475349263163070978610950486766234107397409979634217974050928014066919223534136219934067215088896161064759214148618049130963680983012705398939807692207987093138939884157043400363128971664499276483693036909962979142844998423058170845192989653278227244556,11392712315645310673556256100365181042182208368042016535682634838624439633464280578340353342992697843456486856323709208993769929825667198124843256857854149171724638555790573818365215224736100981973384410995558183533272266822358013891089919574254939818330873527463833155579817319890250882056946018928950519405481352273564274138745239339555689528027209630484474043328702633331977168775903350557929023233359205813047128230741363083482041365845075249319178793999005856778680811779083784522911420519825713738930903604514930432327435755406403484491228343075922083298289929463367612180095879814334515830338256256962304365507,16128185768089596194287119128971616467728481679140585100708821051566471323843047828854183726318833284371487280925375797724567335316422823058316454263458054143106806709907496680547056853651764349462358556329487313360470751830659004515085115085503406434144518308588359624087795942838829972724870214686385899497790143468039433972576851570857473482249444251166188717970319339154993972583107254198134043017660882069243167380269891894037618164535745069845632928065376946760432598515015966819900477155552863106379035709861023910264232532374352692943776001019180723682584987138149276551856921296644229421379331608912433891787,2216711622729147643119351601279604576561222476671706440839914460051282496368367881534683081378746937805707571316950268212663028051018612966825594397873907399847514954700788018713085783872783310865267981225782070802491186153117333152717062661110252994273036185050571252614763467112197381544773361260703440205625252670499456016034457927577251901944688698835868136916669160283880144324751412122403729270589464975875662168775295336481672192780137765587777958466322897160031233145485380452023766308429956773283861365366429753738225270634870302712702783980696520536919562785018253963272279772947237341901826167911636277398,14567981249611770119460797088791616882610277285940857160650608249425344206528691122331543913667869847178068077135905754757970717904714688019328854767805335556395966314263235325078374161755665460346725642944725762703818596015903905714083108502634334495870792846224658572820537006327415243377500340330706127007814008821793048336577227035431648149947100606065474813247441707074217050761365292856644845629066245995828609114930249956124849463230151850823327413055370077318181578457937246716760725440912216906628033172873929155794447444347775998977195569636526530564164070920144286322379557192066768871877841501668738723305,11562467842115790891804601373773643847126621903349499609152938962148770984937205728801191644445725158989276699296504193090664088648177394705510081647868491010141118677836328015755807190340752111789458182176683494843129204876774659319228937425442946958815453444622877125277511242659189800732695804577042735408856749044867603169231506434230337165888447884043777386886336176295745762185799165141571995448994795987563473269027183930075484844146542824749783851152327060411300732221330038342605240436682988238960554043191119742665518743299119772957848539797927531910599793668616983919654530567233469044356313491217598173963,14001988942247671750781482079375285966547579414294794319094213847379686940578167330959958747320137628734714588973465688779508774703004652572462868416321674738451567199004872420641775754108356291951642382728451341563463073268234897512437292991864411475522021623042299363078178084134670414407763213420631947305174457007699331702204294303015464925310244650403343929391594959891748515738314022772251420423895070351394216428634037166244804545860754313566530581379130190514697248618490807663014153146208137639940027271688234812971813570187637013722635079779830294526604514749212529717398437104564243590356265592707324430248,22660381208680529934440965587759859630365737502029115748369924654698991903261875827625444059798716389150600717053198039271991446052177985348107490095372700835812383361394955848974961135498980301472468398590372824927166661721168913896457190085269560320077063240744390945543298734163933076390800852847268723891846915780866370885782050245477056357544654583119258014409021504561016925378839878361190561580782875056594285065583655990468688145199834395357403106937935824760810934700883413929457207664342072543405193505090717688282434192414638239406093224709925453132516053056802277292184257441746331824932943075086343111278,20472030140330590554727016751322746521411547021589348812503605132754052870300345339453032427074737788538570891246727822818774891000538284023878268779231690147875265496447517546051987993131805558030308294615301233476549529141133753715149811029684466002817709334036803452074715441881335148948617848448549417354051160238759910288354822541817903899839091496273435021826344319441409806973908079330351993159801831003550379943098083992503486981995525990398355622285332802868604496636639655839747683821735810491234886789689703654299736502370849656509374303361111199544583501333765966424789805698080099714702838932727164170265,2453173651401016059883376082702788558595819343620938909718003743834761063920578770151771007440124157356829685449240956671627119096461094862434828440771694576875873539491082895345114445338009283914246401641276451109273726841868022516636570181871922631150553766823691471767095455577358060583652290109547591748476465162423200240371828509110384977101559949176482932811774533277255627251591525680337416653414697852938946477765739575989782561041133771451257557157756072849234217247160968445068150218106127891386897699168070200218755068578136094949985380806928006246790329032200529105916916706533850553672076045608730359951,24113152339438360498818613385483602121911555739122745946787379178133957345957135620586264478203421944425299426192146461629084303328006516447630615633641891356240907180660156167532682435848933370915136668244592305335752238307655218128679169067763462102575980085156721937439825798887974559139719995948680828470417607776837167245694714142889348485597791698351034577938495332154328968099025912022930753095015877561713107591709857548795164690012791766454787725487399290632750389338230767552797412606609844617222343058516288469384643892784348204522341997782682670665258025662990169755315957866286658684293611644496873215267,23048127989879822710411192866890144848102725506107457207672066933390327615164057701868652098516421397166175276204189099923035751642625511125320886106285613893278788342927698548384268560900735111168363954600824026890037073968715675372129633119593307084369015870114545021114363768521678984746381386414166722200844864695581741219036038918650136132423598216731404838838590398569938445014697553573715959930243891120229359688175340044395042982004999256741864583061848148945179825358319553305735497035945950407010348447423433336328707080153581767979294379351950056937128181379551873194994067035954630194182060875682649437666,13618893464695086149676203128264379703835247962620883770951238013108147463339903484787069986025297587613907750851693587285998342458273645890621629308654871877706080796956646324471034007240766614380367007821000885398439611969420081154359024999574164769946112634981576459912811818772491470799900760145047753530968995478407930477477944129573287306569838212654312701822189291272987922653156057983889008935259264244527455188704827518079129994488508788103513618119832400499449348458232904888661877972105894911067928574676593878643851258312142433749927142945806711403413926146774157545099025460329680057003565864119710344042,23894029291617241391144328899509691451082120805949912944383938437120322549284785238294999166576087704069349411280857670919349460489513399500828536265895125463653495907166485758411354581066514943080277665731467417672021474933030712874768858153808012182457456133833868682464778542510979705494991241834256525297885337509013426009068419788422403698033836643374538850826433098217327104341285009528115639746062522009884356634868057714134080806096522631119686584895158882950387390079669636785522392222833493980203199840117132536258676406629318977553433626720193118379634005263005358473104730141003648560474105109737111011794,8925336938516965008397109104514048184046286665452569746388287155124102463448431342748346308295582163969585477123381674515410213967775651281608577967919981280923720344420733336038269189964575637162708585549385406099462739524026684819607311522399446887121322482655436562521377082292558533779186792041587188361186852658931953312216304602575717772394803653647861926317392730789837892117863267885605817028617970756887793540591824273228108598874261690153175536884068161483807477696239392976829822163308261960542651335245650622440817598987961098884462409657203750437907285145610244236094931259734945402603438305753971150592,11949666259971918796589430623190075546810486453882961593114781232790528357171489136086300172564872735213582648459678932324553671446193373613445392996846768949427585353892225809922873734606473958012848905522095066153323414491640379067553063059327565094898320425802881846169782611727703042073646692303198048486923691657532734229486488161759607766287874080676488615866925028524263799527274261471472615111756048644281578781133899646868101860588922113737985515123939591333283772116702698675273675787772365936701715064375893211337204849804346824788133348904362412793959284749560448461044309070434592388006426231060171764771,22250566339370324059402215781976249391077086920660167269541657986285216346026428267640441435642495757683689137264020871118649281135403445710476580606390835296225377720486579495200200373576733192798872047011357659910138900430140520045889539388154712432007987497852789128001047310532391671755193946030519165629053752937739899959567496721448943588557458516035029605073085115080892712303741049416122614132971525567297514147438256957998569093867126816514230762539072531021367441808139154778858187018499802649090111006001230394761758788797026721593274233504527845651968558769656875733771044784061166465882679811351871629592],"BigXj":[{"Coords":[107932666477475802631511202367582748861519739569035537904969017494701526323818,27810089900979531039053592509940878404833992140356119628629019981009106058899]},{"Coords":[70488850009775279003934303461546816167586319901288720095232797816893086714940,21365158033407193885213404713050228625397820553043856269267720323259910113340]},{"Coords":[96704419145309517259142970140495022508494287400107594467439362232020961329299,76628584944766298203991062873793502752240767184659143342509677627090500089962]},{"Coords":[28019161860991754547254544009397503028608838172584402384170752184470432984674,108882834276696603625351040619123218095898824500661874818668494090573839581587]},{"Coords":[69854419615803608419512220164651266075688659942948825382651503385261699188382,86209865999364219341605400066204025416938700532196803014526015416182305901566]},{"Coords":[55707469940275855599640808250448173151230633312005616373715718152006593734016,71581471827456608524472614862044126332419275513283203837579704443605501341979]},{"Coords":[31537542564214197931115404850756486671358385103785295421162883744455005249506,31003647934233069190792056145926504346119044635106496026002117518163562078840]},{"Coords":[71459743938853567115182393388387842195822211722537627655935266215390092032802,105621264392663357649957909617094860377111556629887291515711877643951632476111]},{"Coords":[100170179262204638729042299933877814060918019584852761639094198183345507736585,28900877763089774489040863107152228045173480683157331262486804734772631569442]},{"Coords":[3393930126761759176345687233491451168543634500428196687848693751772795262696,55773871461934232294712308387072487465508923595028614508001564000526922809830]},{"Coords":[35436174997161384450863357581481493940397620545951968086180770941965008242533,22941476771782647278770334144010957938195504420883358055133977993491797250976]},{"Coords":[20742591764203230819083960194719627433799141307841650214987882235851644570480,36792680781195360005281832466704518433303594582044389944698351592636972852101]},{"Coords":[78822613167932563650341174247543824338627391764838115664582901884987316485415,29305611808246076472515388603014476455888609363718621630903671994111327870746]},{"Coords":[106662917025753316359017201639970683777210765763056751174154469380644107823988,38376047705320523688829546978146661452201839032747402442602961204420046730181]},{"Coords":[50131378328647772110850225682895027165473791107252577081428683178756073747030,6484525664721285218064077598136507537588284647694850022336064622644441747313]},{"Coords":[63814576207919556970263190432671978386229401573575575774195362165468317841987,52351921007743438678847732376277019290979039258214198300788054101141627584484]},{"Coords":[33074537919982031116943260590723731125144796968052633499149040111855190089892,52462876494517613825042650703891412581466209764861573326649361336309483684004]},{"Coords":[46337244846970653814521818706394664913446423803670640514811670889644615970917,60622380590936530234720907025041106487069869976400399621024354043945489694205]},{"Coords":[68932201886808999446322681662607675293176822755681592496851252047161893154617,102558540543641758967834783938704783088913683989892796677072783324191846467831]},{"Coords":[47093684301174743530406169926797075725911173707597448168332637736184121729220,74517549523358620639964596401882412428175945976473031695393603496712918162101]}],"PaillierPKs":[{"N":22709559588116531632086995360614881758145847958604375585917706994116168375700793376291131544827864145364687259129107134734036373558516565338923959924703156876435469021413354399418993619174071015237246272863140297401272631661028437511282301913323857011886496541494453371682094558243513835287198378640755589750985308457641295136946180231598093936765306071278862423297167033582450972276390473663053961764398615170355333807856718875047329620163477731845253445115727590642190491372191245975524943279344261890117425706855830582201691939059698357650223528988243289388677629074389631868130733940366531485671699566601163615661},{"N":23443957150234287781524191819714980056334495753799141564738532515877512840928595615570444488815473106829833471979932833846134743028112638013245259429585839683894162551870479232892081727695293106142145837752188330564435054323350976552725925455074206192778580457152750035194725712966851385101176362564718763658489874740341398176203077931510475924742361380746164713522692182335455005818339528332609035897638651762193188267900136476551393608916669622907100712471489443414455950510417300576764177277906265582678299980344888299166427651633758323734973558749488731824311505669417847053850760848940423643750519510719400853833},{"N":22287028689259504755807149120904050002396020193634043129060485604472139332057712093383073269246020913354970143960065213561811698182428208504100112877284663913440710058603853492628849020664094889598583038642474751945815658301741607940280803922553940685657785019086609257141579057485855668397778602262577280637009340765489166395694519909332104264865369924039797553524566502151933416185073911748303993059047774791584591703105106437459703251723998725467328206119091524784524659754164199098692948259716816125731645175450298738430174307931086107554346505367596601043514472572775722114263120820933996056766066990263737006037},{"N":21778455942403717802437188616130445569467912356333711523204106321468333958250985526522676150458521139952234508699903096368286173136552336834061186195705878795885628080532376972447127537374960052755412900354192740274699607194495256559382391407619506149746521336051948176770581697936379025338953179299724284866217851767053361169462746892201032000776732741861429352495405542992367041691709412944529198233031428083828538853890568987466209820731450551650370292813109604532198408719181905952928419308306626664706489746484860069309396704199131581338218405332252354539932883923534658047809067343949198229794022084007329008301},{"N":29488834801717020514549557511738862835006604218586783270956635930974777840977382736818004943434492491272083417763033198615963445455042431681833978353867438176815774128330303688651059852719975859250721567522453513175104614385098138081209372251486732213899964978141377939387124226524201851559541320231331748973500724292675746395999336271645347092285737228923411234511145980962423027637945866866145915490526131803713409632083226573065035861386075817821231913413262072294132940186959486615122177174171466978866072639941945123654758187894442697758141328636666389957637295324259708835849664958476600091423260629670847006421},{"N":25268781854018641821625117526035412649921406362359871346957405856614663043063881662682001256500050697385215601589085313282671061645985003913281457834036290368462929918763869754871955608135979298238482437377851913552755913815405018774915484866488142406303297444296659799278477225336231564636195441498040062964451813900346208766721654100661710718867197194733579941984196715209521167970358227552984230489600141394198144474928084583860744656840175887777161454380202188440178263993042579519816969496156562013371732648143667185817225623397113488180419930136011024805515953457443050643425221010148081098971618629282508806153},{"N":24077030535873838147372990238338423111894661719881851208383511932936303788667059523325649062922462968249640702042151293306587810036594125879862518141403476609262478705296844024060273562609291573351215091787555942245982552314643486135981274381916357213038852978171063476276539384812002232533351978097782562939609101707149234139391638125337919614533689982228496010017193463462456934753130533077727108799001253943486336718218272844533405886783727956436625979626270665501149887064412642510585330023269746464208739229956710668053204092869919317416558618819105166451453240320574158658174090376334547079951345889147202424197},{"N":24121210025310295136286367465067731861316363403302816495348899075683542883649267862423504534408270521528934904000166037695519824119622953526124849500602533136680339478221010232315859804261374907195769559713293619918530079931895046819311703445607618111244570268187554380693098539122537784889700313005700764528116670706472264450599583329582635827622249925780628859318211609939169828662135675938640346560681426019582628979275573701346775265344080547061237809761964885298244705276139799178175782218409921284339726928435810584460742981474010807766522632224843035722465220411812727073796692626221078545796203402892726398073},{"N":26956782591324520026471701264974010002551430844929064558517606333109244333104364565707985261498791802440691867651722784210280888161145432103606824079477489895607158911928686613189674072708812330140444741131333062722881890279580684791181148664415766399323289281546841599984936640417820094077391333063403828290767644884268872176714175866593843027335088472731880830448148161449695591865312724115778446298294191846018327598860718546463796845910458753293225328770367785304521228332493000905274903063796918859478998380272311510096333363160486944174426731511854410356169028732110892177884127982236790065871058497952170624401},{"N":26249557760815986852034237905417683014048371748204856284575862917968310785883486514046189771449794410062311941320778404041317694258818896788913080156960590072834802977027251267292982532721343074208805165986815554608059680417209847673748867108719737464989377176319950884300513507127044766841349776517208994115342645229445634306184178062065483947743824551463650982111893910449653832587022792656303977671598375329018430362166017195461057586254287305421091325058340750141735758488815547176349755224428765382123772435956499576803085012124378000542928725389368171404677133866847871236251441021957443853014282022367009685861},{"N":29234737641692976595774236923019314216135921756073342884203680618120226690739166288052322806435356115092650761656136403373733697692050475566331202817414926309882834844059857181882811689758047525443057988160495074334079542319370840285641441603178202467820462588826229922786870937847036888109767951604636584098102615282750014508387427358079100450062680715472456836097388046216848854107984658532128468648705497171277133763535425127577293318939184956565230142817502839346792604559307183239212332206857888330805061669830296766718735240517983609617995793272006065303892130080909658027060291496416496673503247698087863812741},{"N":23656386949781378983561509210223997485938600678969404520355733863050336777307520388106184053630795530040934267843013912848246799628076757878172461266778291537251825140340096706161543161977283845709058224884977213986434571463756330276479208682952096086332163009127424608568458165322976353036562065434426650045708578336603634894217912009997772105108262453019882143577371634194078714264992380438885990335741008955488808069468796086801023973076920357953123958081822096146124559004458043648352764252390085772923647155984579633692639191141425745475545839873632550694666801559519849238477058285069280151324843991596401646381},{"N":23799985430892428550287426639163393896421663100337917557737015159273107046495772196531619480943457572757018895004491581880198797117841320493538657520011738472038586707181276745476787089472101888983238214242261897466709975139313526918983914349699164310009561585851364405464439780111046692215844366708075439030620693316351016954915727063684631173044817825576871464988585229583331260702104268887569088888141481975510438061934915565917441018736997897082388887244599485050548831301667982348795441755679549415459512278548728977097478254566801983960996625453970296380670902503277224729081061542066926552900097298958795919921},{"N":23398981485141581657111580810187356464859260220476400872431878471724619284703169207796437272649895475435460945312990810473873577007856956495840504596329080928974891464665270653430872926713471055976901497303072174459471872022720981442223753911960555794844008812776454183058593769792366230853507105586338576934054995838272457499054915439455088496111012971850904735289245691042597216634196809202787360353382667100073960437339209464655220130141692780283364216457426778903461083049390591667885095066567970867147659207581183606534554025283663685502553767113396678790806758816850832944906936477595076662914396730813902861273},{"N":24645804484208008107774215519843481629641338685651268289287772114412526440944111199969614165736177320304962312701073205538949325003439610780511806547845684862319242490345551374064725883323450769869814834613757570218276860284970150303912936880248283750218053176729988470901025014948637258535944241625099061769802348376561541469733700398108049774899180411488580995483844861534070436865153589414051441506488195269353530135159150725450897767102214976100194473384482425657735122085724544900424323758582364844065404991831422328546732900258700279735848044809564185617079126240413557300335393565946088211107690073344594774029},{"N":23664465666512928010084076006211208070039097235865486451752383277009646489200010451773766854885315852604650109050180997494686499532996982524560956955784208153283884502900612829692080614937231941501430129101050170848135543483642879522140453631883679490750446245717832265221232589489474380464199065201167874127465810334527670252907568617820949350516778153996202871756067806159248004814563340677682071536108582393686279672503548392243690499337315202892692273695083478754736347613219568092769421161385508903701795824994052294039246344316342377047969959511601521901736714883097032290625287691937066549723767146291790114657},{"N":22165609813091667259068375406991183583538522584875908765309739098448534648989953434651686788146626220283972510122914357995219529654582068510398362007031593307847827533082059785375352080923687640731375327188268078188971415753864060723639564145551626769223269559344648109409611860616931934210627553354435590764505138165455042290624193631088250055962033560484870481238850988856340320616852463026890656813658017413542014132396994215496811530247375977104307808133564653689276479112825279061966541271092780066027501498091088819663615972345385914896991989394778860649710938578818683661928070093400675043514978345177529652389},{"N":24352137164919775060505902875895344669551891343219870713119659495462675754712808458066602996522267529841963340495194383402601416044030073771848283771276922546693343786778909195920195728052430645791682092298169597213540403251589258864324656830830912032021695409682689693414793104678019843226941004344886835923010707685858497420014814885662783481710790760565625597934856999445792014460533464855807508832344902590088930105318969772303090927340774137226985715726042801943592444113021856673268564036683304420372700405680896320106848396385562893886698977710031223312091933030330629827691164100994176634674536649129152931477},{"N":24388425323514301995345880181969195093222141730097776998750148283180811486102209130079655780738706237274584643472954914248041737365215477795339570700387683883122567928523036945799350046333477704674538444513982433086664207664876244841911099162128315338715496189423824903190803189243082722638413039421880070666657272413079871744422617706188003161639646693501252928939859937588136677607569634910081471599993513483449765647227570734163189729311880395414909879933139619835138785852476313690881562300854512419432999005203281002911021482679309149225773391703345476483158302622073477221903694296256566718995262186459619480089},{"N":21604728584405813409256303272593334134333518895675489098410576803850613670962405878762275711641486977471395420657043551402890823783906820971712770494973201278527635005537714974340519544361402189093858595896231890523544098157276831993549216761475195055251372273062282101577640320665049775934814411518181030603401788639796770568692007642464803606076672769360069701571162199680486773757848273630254180550410784187377722267755203781450486589090106764541644204842436002216866597611146281471192249537747681020939314396157603364418120170135828923470079746789793341042476885118587449440114091973976013051496269141578521399429}],"ECDSAPub":{"Coords":[82191134404558877049244897640959846424169542769967270904890689024123037541855,102677683688073592669768840687667774566029618427936181452214529135934890152533]}} \ No newline at end of file diff --git a/test/_fixtures/keygen_data_7.json b/test/_fixtures/keygen_data_7.json deleted file mode 100644 index 517ce3a9..00000000 --- a/test/_fixtures/keygen_data_7.json +++ /dev/null @@ -1 +0,0 @@ -{"PaillierSK":{"N":24121210025310295136286367465067731861316363403302816495348899075683542883649267862423504534408270521528934904000166037695519824119622953526124849500602533136680339478221010232315859804261374907195769559713293619918530079931895046819311703445607618111244570268187554380693098539122537784889700313005700764528116670706472264450599583329582635827622249925780628859318211609939169828662135675938640346560681426019582628979275573701346775265344080547061237809761964885298244705276139799178175782218409921284339726928435810584460742981474010807766522632224843035722465220411812727073796692626221078545796203402892726398073,"LambdaN":12060605012655147568143183732533865930658181701651408247674449537841771441824633931211752267204135260764467452000083018847759912059811476763062424750301266568340169739110505116157929902130687453597884779856646809959265039965947523409655851722803809055622285134093777190346549269561268892444850156502850382263902806958768480538813290855572272596391116512432560274979322956644860016246818078003843182233787893905646935353622013797281695035424583426826171945830883171964349717887486601251598125470985898993224142086924045847585983426808091415962518828188544202170727314784081224048936232330465019957094478648652455490514,"PhiN":24121210025310295136286367465067731861316363403302816495348899075683542883649267862423504534408270521528934904000166037695519824119622953526124849500602533136680339478221010232315859804261374907195769559713293619918530079931895046819311703445607618111244570268187554380693098539122537784889700313005700764527805613917536961077626581711144545192782233024865120549958645913289720032493636156007686364467575787811293870707244027594563390070849166853652343891661766343928699435774973202503196250941971797986448284173848091695171966853616182831925037656377088404341454629568162448097872464660930039914188957297304910981028},"NTildei":22214406206988221120543596573138808869312423548073528052574227838235500966558488375856182495656208729058219131190228351185002058116343873479198633895772314072671413818939926736318457089940649635331152484030046857163634723835906012553106874988855844579826872824922610248380139635284283310239564378546105159549071234915504686574306652852285495484227675227079507874801353534124836509674143920296971261218965184384289987323806590503991373066703353411925035343072343417173322682200148341574699074894310006001608609036165489022667366737175975429277190015768847957906950063130121905159960720849686267420829596753652148430921,"H1i":3281434421303304451534752490245528887879239197847942017450979313729063086003376295872507109217827492860554007309921835555072782997029442232019030164252143769859146809734506916627953872016140383116721175515392391691229687480990552997729334078523811275423771755788388400181281035140972235710503768780977567025805917901565574387698038208089499892809008311004708551092635216129712077377038639345772519472468677180077197280667928734700336917165150723117546746441573171713790905181182966896063824517476166929486302044010896828146903022644169171194514314475627079949830761751962833520028060036397259454122764395181619471620,"H2i":14567981249611770119460797088791616882610277285940857160650608249425344206528691122331543913667869847178068077135905754757970717904714688019328854767805335556395966314263235325078374161755665460346725642944725762703818596015903905714083108502634334495870792846224658572820537006327415243377500340330706127007814008821793048336577227035431648149947100606065474813247441707074217050761365292856644845629066245995828609114930249956124849463230151850823327413055370077318181578457937246716760725440912216906628033172873929155794447444347775998977195569636526530564164070920144286322379557192066768871877841501668738723305,"Alpha":14104048596844314190166343976489299256149031788664254739661587419197778089096870902117136944600584636379029571897987857523691414479439599793865250698949794219445954701566493974991104632784053482671548379147857688423899752567583937285017147493926870831477964328232484709625530233399695589229478193328196393978512046348250007152193600055231081130083724521253317688518366667105484145924602117988930477758608085455826551356325640518576652208870299578802467206418498671636471224813712091005285621588288933667077287297503934057833314984285699995578857650560808422887941857539440702001227573258253326313744528903438646803467,"Beta":3861057824489810571142368453355932080020452375148367079015237371077218251111796380447264818328535061941703601980926596824223878879964004418031508972944913580287943915279434046922085746961423957176417064845013712783445362462760986066851915650007781118042900963128748983031096602935803970700793650792507590166709002982161836525789450958365217817767102243384252449836070253505424839200488144811858800888067095428886838941311580100141546377458900240532460995968604686512838140628718390668301887488655218197939187725599591105442079071498464183754965439434678628887232624727231552144082334809965762920732577308928319180726,"P":70752439231358680460853982696117570770950047029745153998931503876661449742128379723154900732905346167881650395967596350064576292664455768373591952717190161804395749502683017770167601116080443654065863148542542972262811768284600902870294281793197138641101789066190369650295584115563087657364313902072866992501,"Q":78493428807265840919475447309487777973000375292842463067792217261704498447662840775871520233427849208946836725767697040074437223499626960689573605215521237154908956377456297155989075825148264779151072777414426307456945782159899843449272710074055231769621565443336786706510619593600457875632712020105331672653,"Xi":83186401343938809195203870831810334549456815217617096685071864716022742885655,"ShareID":70024534756929667616115849317753032895580033020239899587896153938577578972756,"Ks":[70024534756929667616115849317753032895580033020239899587896153938577578972749,70024534756929667616115849317753032895580033020239899587896153938577578972750,70024534756929667616115849317753032895580033020239899587896153938577578972751,70024534756929667616115849317753032895580033020239899587896153938577578972752,70024534756929667616115849317753032895580033020239899587896153938577578972753,70024534756929667616115849317753032895580033020239899587896153938577578972754,70024534756929667616115849317753032895580033020239899587896153938577578972755,70024534756929667616115849317753032895580033020239899587896153938577578972756,70024534756929667616115849317753032895580033020239899587896153938577578972757,70024534756929667616115849317753032895580033020239899587896153938577578972758,70024534756929667616115849317753032895580033020239899587896153938577578972759,70024534756929667616115849317753032895580033020239899587896153938577578972760,70024534756929667616115849317753032895580033020239899587896153938577578972761,70024534756929667616115849317753032895580033020239899587896153938577578972762,70024534756929667616115849317753032895580033020239899587896153938577578972763,70024534756929667616115849317753032895580033020239899587896153938577578972764,70024534756929667616115849317753032895580033020239899587896153938577578972765,70024534756929667616115849317753032895580033020239899587896153938577578972766,70024534756929667616115849317753032895580033020239899587896153938577578972767,70024534756929667616115849317753032895580033020239899587896153938577578972768],"NTildej":[24366917239515824974480442558600034492208859976504581465004349103795399783288421050831073024860369440303795551299953821996018530997630686285237603133194573622718124597460737572013930327249120648302190449742363261573076443183981343509885970573178298207488759436277685910850783372123719807298277837194569211839837465137044422691734879346883675317045008891659749391963717253895556693016508386391015178130161988317310806894350108084212611277788190739249760699147435109968242744158314817905689533615803297627887736048945645075792686416602832677541152918424023805280241226851534199867283487943291927564365275467582581271053,24760645214372673899925400730945520473062951341429554908754617530444794660401836428698520741646966955149111758288194803110363170964340801072472223878272430220722034553855593944561986134993071918255771235073978495918874383067260043443905506152815841034811512510858407909698555608803009379935760654878372301870950275270724586431009354962811874333750886958869738872804882633350285507993032763679234057221556156642769183354423672540429587887851343483914923600996425040023829456198369968692844034517720322057627565080062766276792221145223750390964637842847390939964073972850018793739320669513533403812272268817559996728177,24335507174653830446370401218472354012341984065893977351232759664219171991998539382418393419142907217562914494098827810315198583692551476438232634594991137003295122745831430159532586451010818106345725278793436836406022036374386618877645773128457664942790386603953998246404350465143928182109615440037926218085391564421745517307996722808502413850991173460229650178023548969664557299385141472097112836353938598657235574893430259143862369227601052831476146199261368117297723539373329843815951236997008000605506966102265798289158763516254914284024816124992986001907541315389832578466014006010753144367487203071067653140017,25353120959776139123294155818546513426444543204238814947681743626639583989194265533184090862296087842527526282860965927846515276605818147773016966742984780344247645856238734726222917730082852005118152200740071409410429096265046046476115230269737050878141459099734884888260830179970728221214610731604157017545322535971152193773221758709395769765431078738204491094323008301356895841037132747444047830530409305765562694358003007195242702308043142399969256485870876259711230128209178441443167004632638027691911658424285106297785382963002590496015895572427776988235599297735903480964253948429971597628412447354914215359401,29849885402332341621158797110436829396646924395042456662853244309209629024048299162272105169817115314715561658954210859089958590864101117136365470947498907594068557026997249170993874294161892140147876022164668279854630146959174794473879294364568105935870579392660025720467645329300426773479121856766502569984218591054914763859996476236063750210092775547343099066989888106146219058807079888624162205626100491953381078296178689026680702514982189001052448223393538379392778307314168895065497502603308074595916000270844935723623383768691838356870704054233137068509668072099435779943491520206735659166266930856700483211181,24303346306264095483727907643814355785838936488512300414348142784703917728792656928355740144163123550572150171398192480623395181408570425672723511597546032812698562984141032629389936754449924613948711482870260420456913877526422469201798411517711928654451945040790337077196569240216228957228264615761147375423719114756511538399142649755527243797217920772594702713281103939163745422429156605226253637010451757984598979666631182977221341184990723224510127460146263007980086670575857365789365543477249518437176817144448210584125518855115672157465775432933601089465408090382773104140011964681476656187299047937685144419517,22663176204438991528847068755997123453980704364589354833944958947785385672266299429364336994892902925142195136026995771544990684289261678272550855925683439714148609523477977179010696117909805695701859018966669150739407573082987363056991238107146673103957237104655136409343763639221993038484198677605284199701204669351878989982962102150055730219424526668206392140254467740757469800556697236694088468633665970603098311956910105499246381935436511205439918717236853087415401432056630404175846159692661637004967185601880460514710913037913825633119857629058574151126418040291146967097319384900092639447317903904481362864461,22214406206988221120543596573138808869312423548073528052574227838235500966558488375856182495656208729058219131190228351185002058116343873479198633895772314072671413818939926736318457089940649635331152484030046857163634723835906012553106874988855844579826872824922610248380139635284283310239564378546105159549071234915504686574306652852285495484227675227079507874801353534124836509674143920296971261218965184384289987323806590503991373066703353411925035343072343417173322682200148341574699074894310006001608609036165489022667366737175975429277190015768847957906950063130121905159960720849686267420829596753652148430921,26992054981062895613627607261766199835432715284801801749398907129229048796737348701447929605174559094984645968238323112325575430714478210726667128296579144479334211667227791506349731191531989884599385537951555136889431648507040431760656554949203843341649040209953028348323032563665739842658324687215759862340780391326904566525914822596715715051383829453805370490781186878600411802395931887164480044180689343432959074712196207660797594065685195126347713904229309636698471250350144098081500570797555478540127343168177689831999672573508345263924360426808488416307292793876390765153143370885661040432948994217496537757037,26883601429347938201866566412436359463282736845136879263977010812101340295160083165177085686402734295128738223195845941394861534416081222492334460738589328436684156816061652087254848610272225814333318089300032442695939753398569200283276971829978683842747584203047240258517693679059389343721225356421724973291878661622168915849085533925700422984364421907650824486413330797840743205222070155228532990351439410717713883609930796830287062705670943579996135308824473851899048361474382520461452309816639861239026761274994745411785747289015653392872405877863169928875880404134872170564729075194783267248873823339090853461089,26675898204441883357756938810501612911006923314113656530850642169244358619346060171584915468088311545710004060513299980257359925141562861692364285790755062927815783069742814310907363159744172010043214941961935176791603921250085454102936917126214113873120405883118273636844903335000473865105148550590214462929117780405311499444885924770449779157142014006830224170685309315154438797997384633339817640551850145502452900467824909085498261391267709054450200313476628713250795473832792093350711410373115197160491274663551092524073340836221397352664353235247831158949819050115215290772010284539607969271690219902603821582657,24003425727589170532663869192322030538943945148822062399216337010945961427378027710524236529045097740008239529891693854573603730323074574387306355517555029571396270483790272731994105657673718134894396083438028861748333502807033025075738141563799251049728691667635160338770958887288469952328987442729682278796947289053518986771911122562542149441355230810099948748099507142060010177281487688268845292432759376770532767245812643377347484905682286529844081415426101824234408564247618590677966518836555327692461478356122297916534505785216531638872958168430321684571355170353352724268927780693184938724886624339722183259421,20030939948791694094921106997836532434578994294403521371501479100010836848962747077471607238761388497679145378822499150459403963802326636975589780084279335637070321781313502047027883154267014733038805978970710176410579107929485519779112034850622531520287022547371539439386174878773544830750041302618611105173361798826270784808992652396596786821436733488377837349284332001375201088424331364286550732742247150161681889289004480841207149941594126907534285607712061943572341899739867922754683103581617612214747009636033814762750497302268078808823665919929249386647148964298452596399586628310864464196272071720395192133489,26870132374951553243581913321377246229771795848056596419360924847337540300978229013002723427615100062690126686631934134732102152941473371391783556453709425066357685692036492637888980565254013131275256724381428020710512422112788440607830591932440438849890272166273212125255293837259298348084558313308788645038416611482549103781514142985867750527012906984385110191046837459757808864741583473057341019452578423080700589131792924736182910584032669431737863108910781465411300404077532371983623221078943741087750842713540302692591604785862604978245628364756611702919842339423052849035969584933072813435912401288087398604921,25781309885353513172762417920559862373653633766198016154431702305819993747433843312735651525316421555779956949217599915608247344211910767561492880228357017663462131839160610108626231391786518524635537763772771732022138542377442385539024671393136972077400774477946909998449518641822004119697621239956294809097040644518494643152713366295240127317300380586618659118989790014789381034410565903140125870883802621234783419468923863900036725871332435066935174631607488613764393382263135690909855298574769132391272005233712859895795189174927584736869111985784832037628893972777670733794612566699959726190117505644366934694141,31307948529511772422092081620376528723351660195178245630091738647550584183808045529448767036136429258045017880313805169530174754560039519751935200016137594525166410173049351154227454247975670642857061354284229524586536451868860885813714578893448403685065908393856455188372709054731049692863370865677701391460552630927498629863324809550335559817235997586126538332699529118621351625401581293898546298753212618743290610874832103267345624474884402930254336353399762494911879332332316505133643206864735435683656288655072941785814640312959405902536938955107787448304325831133755028455554235924936888965889253927315459519249,31466961232199038206393986199348595708256863299176374148227521484010795684260339468184532260347996789772040097386032241172658309499404470468218492541809815234208995118730337303514831281668817831605535229415260143432704661750281094187807328676322407373913844432440683972812394664524853699586055958635280164067281091412249301309251915772998531080870705450343112678791059297982033179252277552572737658097615320288170699408198262523087724946180097295208523307748556241283633289461565623961341136472687878275672606572269060361808996126027608464429012339688636176786148346418213288770613540923635302757146988963110333316781,23282315206683722596094270562333648753439051790898100314922005841725502497093211800334393760989042727597691714582193235713639238284172358062468387217727181092939568556559834956352385929118617242221861532950969685568622107078283773942779583910577282365015752267710687089071780861330758005577221151609134583129504364837341221471368611555190375227501319216183854908348755278500330379812379883892909358375120467449644585220805660246421673078936109889143381498767668445860590513918867961598096050612727306953235332046855083649560662539716078578551485777683734466740521988744140757231408246451261769915726695959921765032997,25091337650425677853684475917739333556784369056148930585749057080859640921803414967035499248336819782755466354804640016025044002503128223804670636762370700960312352761126598625504662989187540799606658080278007629478214427447535566556662347722562243890754037326739900472696108231869156013516647618154210840364364919089100138905499001603568088340085110153219085814807927945152975657929969505495173887189020701090313994816079981109190512102678874334588894915787220152560380696231794377692004958328931143825599595181025003997691503128188855105160353707735893011124272774335559316106266020514461879401833904958202494061001,23827659784682250604442454473547796888740733968924087692522596947210995569582513002946432005898923676155984614087332560259943866897650716815951119740918614656692843602108809220144973266843900928325168304104193270024169252614460073574472494366384192690720704949267653372513388389564250659367518167586555169618994627094576635848093242114762843534765611200879960614166650643590955853799316870443339993391685970472310294098785089036360647811365521892090305001153074254408707786436158648387047030717269669710808288303673434511182840032065481730245714970751088620360458026112893074508503440200554493648329036195258926190733],"H1j":[10024025457847388392610646066298514243370787348338532750631360639913721829629888261433439914402718667116400994500512300775136069581637894623537510481269716297031115527602912311323880048384727148486222115704187210174101029381357780998875764924841198846224052749406474209451141960414618133437662859572202780961023516801781475926753784006105642819239485607653090319392184244933555747381471676665633830261574288841173438644814600240117247473386184548108338325639763390271130259071021112922069642676901166841167199223435257080313456925802886649375691201308332777566495693037805296244451983094124223174758130752134991251259,5540062908155010932513159905564312164946355979316528931149460136278288806659772940588319017326328094974853633874382463976169195549392127817304835111543615409573476314059060881338397061412436243810139473181382772109210271463439624149555390649740374635589527762045108740275882849527695527198385706268316952416235237543464363519203592980469637771074904708426157233888490918907104014536294284692202685017252106362206847500376336741712522098586355602155374318553270307953934712780754034315941245597336144803859821983984428471938659224631751193248483706020880124594451403191977963618445462632103562894369717754678411970157,7294264017980791887588541945948527964732046841763268733085682296431903566128312881527716171471646888128877802321111011007465120561544014131687975703500639986893207003039277321438260744935109724584373350656877837682253991859961109267518971621013884413991023503512551591742311046398421527897782104779903020623974791981836764750802585775470044046719785755322826006147242995196401054126149520747563133877218253475355114168420889541015916952420416242677374123641966631897855997275959219115766326404348502491490713975699304986526310844436386187304302850704361098476666746013218735172029033252239873173053183420490728457969,9501218113444747046512167891740890620022448184208745016727575118910400114702536042272711158066289559244823855716406559728787015762712355980741317225927051706399078523944764818407725281098361563758658548109686452917704268397282493394145905917631338144130662786869889947744035847462163212831976185178442327943506290185820473986106267053867388409405767987475830498385924106417897644176202343305711004215516685101951487059182051580662118563531777396290757514364141633090265347173402382594862836539162320425532069699769291364183133350523773491418365804493761877536170212947415911627316964969637971056063543234131063060179,15798786414829945409990379475347092437191933825852017565866427461531342919124334651290935627606571949258216191049074056902849155877229528326934734579833314251986756112086465450838437292200045064209850028597082873902388658379469441564667669701765841537160309665720024332706155566138689213961078587239980763899119769146527020365437175547591597253422987241897416697834718145603044863506510817025716990741255205962477142190641478116356939618991137525950385435749637759382858607750867147376236491183474725313362128439752969796168290272602393139910089130691220986679844969299810559606706770072567820176650336982258175656069,9335293725151276608993402038690349490322365392613976918346481216796454921531989892317554215286413208524498017721329770260220214739976276463115767516661469141467987234112799014449837377419827917305931640946522287484467505347102693011074644574833321939291182991369361351550845549986196632347752029739003400876962371840702829213086378506709453044627207644282674209652698873675164479665879605315024759424379670463637654094152277916485019222649587458037242630015801094579916767996040360006216068355347853880839844214694922100092515535187976540400673364286904799817798092386690711558542096052961324458158162316849747049802,11928753658530568234030789407795275088740952723187227006977773559909074576164921817701724786519460916583196165018163510774039491890001017299531322520325627826211812869166690445989428530376091680807701566180854522056382923625327483414081231404244458202347765643506681512770879868073522880161513490523543914681148241833246281106290736532685240004675518845019764469048182810211653160870255293592651339935498048137995182398802459841631852186888112285076188858851763824315081771524248572039785549974159773606819792419731561145595921289694471859455550756883293661073453125644271107011011223441502328961618975292599286540534,3281434421303304451534752490245528887879239197847942017450979313729063086003376295872507109217827492860554007309921835555072782997029442232019030164252143769859146809734506916627953872016140383116721175515392391691229687480990552997729334078523811275423771755788388400181281035140972235710503768780977567025805917901565574387698038208089499892809008311004708551092635216129712077377038639345772519472468677180077197280667928734700336917165150723117546746441573171713790905181182966896063824517476166929486302044010896828146903022644169171194514314475627079949830761751962833520028060036397259454122764395181619471620,26798335028033483015595995885818313899416775173626251303214746152969095667991567148306665607431284548931904800914249634868412622200397325111043206330920355980127737464934048444736064518743501106031852408038680600709174828761299003903687195970226223339349891916494477088540593890862438659139800883091968208023580402075789145180476758769233643214633776274238005081673345069570155874633220460290011162900873068065044353387042255376321331197145839355270876626896209116281706932058419419985043694684968787877580180579063249938562059688827441196772120556845945709093021801017783532024267437712559776698525435075445312453530,24379152218258906482492311550879222904032299657142525355457269472724266562417862087603238266608926068245433152992105088073531452805187189356790567435332219230651301413762858849116755355885877930185483851669316692179467165059725168458003778120562044911094551614016767541895327106348965256725682881898632251239010971342586248735804355885933092854432575702106523584026168029150861398417670162335859972289331761535391135324650197244391340985538289280848512779115086784546807731473605687728417756436783747883720385660475468617431753857425268742613699673867257484976547014884809737803594445736805689004998882232608324939099,13639308363088689304499602606006748747737150113207488794697369879342136632158898637529348398215211110838650184450613858330095458701807309615170814350482223259077017423473614957663630359321153124867291328161758174033028972972743424022771180662104664036306205285576270109455984955077713540350117086087967860191108122028954920957836754439818988959156002918996099715859267715547983808966864149367592758343569651869960032231333418638792990340363087590766121964019626938526976202582697949104351928836667810574924696014475214582129919944765647849262874087078594478919124600690586319504349329877883243753775251538124197406468,20806324398112704184576243642308446225385834167758222047710915865491553221121456559290405385050181445190026351137186843498701962906728774890279265822922302262674344261443633266351787522423584433088856438680222017039801221837510594012303704942258177163584539612102842678739854493210477613035711103258550560273478479277362352841578985334600196007452719273341052878795457240578018430753780869150598290734861026318283861569123861098217259089119729724503263571923384603566241538064572968952230647186501970761685868678332574820155746476145383468962025352911125509572618602029024652380792594855032573631797517407433780124767,2984534567830588608251691688517562019886934976940239944296177755224193834812017598586976214786265618202828155437088641819872658344085523203617440122990791586663797768559098311449463943487720199704106941788760276946864277974792415345700942642550277726023952217616537482804161899962996481893200668973584167349538844293867619144628567178172496162265433563681342772983054368775009029385174850706677287569940753312983986212778939947598815595002848721076684937312652495527309505744053588382568512842786184034878250903582357463020880854201625144449160004603244837252628379531756302498757122746553391615927560808029960266625,19681285575282653686371866964026575635551812532880664611876190222601081859688141586553347439412758942096084877111883472375168961225184324383968489352875717670106440217006572540605411871630725641391171380023993395232691314662393923848318294382993540810449491616527524662991307157899373490742858664974644838212306475173795164847929404327886006104677091872987173592834296913553225843321065615965897920646645086083927169011172363123935140462214285019059726271437492418936191962060610764641005376370506280067258828239222704103600176916708092576268163001234852617058752894380793333304339677721072271552272594404600260363861,17663259858420311330651766819499911841067663794994694318257191199872170158137865025958007148817857781638492835306514771303332749042829120815317355608633338052028835394702531720709875380635913577846095483312528431723891955957026638053673584169905737554185634030129649039016018518994356839547241764882921390944931575304729587593422442361903863687010228628846862342208853396044641495867576785861723973159597871732538239253298128840563941065388954934551651787261972744712209405583851147359110032083949020208533161960188954813739180009449972293158373021060141688387818302891372350131649013502869609299334048318236045598871,5298970575809274629438935393989318057761764519542767586120836445032263316761487525811021815951911099884013107458570792999455520743412617129043815044943875968069243444902286481323598638834526377417104328855033745156522241109248831526582827196555064828920153555458318257230359794631019067306886747836486535385255549193636393132450664433886493509087281083390290568729201571601929480774638279112348846248022706481056446460853658284203145411150560753280109970030570227674159359532427547564201906120131477615407933400264643596572008335881981150704968737407428485573362254058660832170694074403410494545950595818012264895776,15913403370317249903846545253264583237445426368566054050873204733344285093615027647693061965382356514660489490017289737470216855339451599323161686141225364898734459213317143215419647354792387760477998230133600223913390244574171627679693591136928514907378143973333998319592583595882555481681002615976566590485876365765518571760268938260544608828017208378436062792581980653043467844284389159435925884731521336805223809049222649874552372676573497110509098941429212961378401761184902390250234585999298135037647853709390803265128558710383431672409386841314821848625953345836234945114508861921890833145094378447829164485787,2290909140884019351426250008814545735225813230804981825833168241438120125584365814035371010990772186759925886882837107545743421629040643022748869446583860483172598682089887676740059939878553272595424436357723367398096377972698494175572434136161599049698027302739164581483237687791238697379241703838109655701932792883820617202754352159209515775921392841098109717647668579384288444138762640166641466203925793570935398566304261495839675905915184706531257340555764797653386663178215604213661066377035729358506114543600757612373813217341582075351741934166661911856401287953329256496263459473595206461438549716253839581620,16642615813361835581230500131246118445590603247887791817817316273244438476256311337001611675388574331977410141699297630317377151836311293305027088331310025109780248001730816502531361314291505497281231329646213545390817348454790771602982974763540004526670479533111992035177312072478629306988622806347623090425003234077873805375141062348645927401285345899503907001825760439541705306585854742931882134500925066002906885338189163552908934604616236359806104007315451823167682352183241953279551520079950202231330492255621315016646701261669501844925563045252616708085163536257987840050252877140816998011230187115088535718084,16010347999096675182232092054526583890655342476048555695134478148077646319292254202928857709848426726687922101503995183630866920756294444357812738165670087524526688577215556076807546011943089084967115014780281986236650136100212790809186133722139336439667178800133917927993914606420172087843235000579778849526996068548810587854703520128067422195406060143205277668392537421614569464766336104310955572146529110182880365088792241394086157577886083440548786679580400292545275535505024808973895871707731827445166453079771165377996477241584002682623055073167645192536278061988188027824852844065261608054572024963829903461213],"H2j":[3368171208877966911054339907901878144315427177489764716664525147952589494997571345476952466465636584372230416806643927079294770772639785886747559841089671070120102511739419185926825275343129268693107584218806327021288882477748577914215697371729166784288283440868236399459954587383445757960644874348547417850473459042890356424271874499317095341286743556259239705095932387025485711185437452734962326711790258196775033662070121656155183933539103178989257156247756946175745703344908852193344259286268186560067884170926994359970521939453852919421341990972981960061011629945378288288327928173529860414633963687461741921536,21571995110918784658914871089233085747498481392093921476006031602493786671249981878215451382962183306832489322303548281716296137774931836883062638257871799588636736223841397596603236825079859053119441636830060533162035824030490541191082185733831191460351456499274515867869223195196735738841516139421749973183291711819985317821732516820314960505801684638233368245136026792456696584282458766742520555425925807015416047178765452538113430822668214923191463369535833443605844329620997852520039896259519774630621573507729397714725431894641714478634392952187074508209560077240054333035743202911738795412331854359778973195140,14361846248841354239738429614485615020817620015740214377557182447187161532145777460980697522328331383902906916852306307688790083451608130261350491455026208295552005757157547049806867066926847972162187184750531821995727255016828133897770613409484181886065535775699953909464798003780913388918153183011660224430464726560354626850573087079518001579497098985920611294338802921392907919446517107741456227975646401634963060678572780580998274987217038988195161229432595476488751730989311796958677066257365863948226172977171594831544011639884849989931328654207271418544321580100757601201270000125579606365984683036050427736901,3320303882237934822574723730249906877625782534310160672723504685750059065549780868692191634937564489497907122877469551544554741543440051593275714064385262048169355745443620314041833050794531307335253819559894664711581948933864857312882072901440293913927021712377972600011615454373450050526995352982830050256391443830850515525775497974669346917338799122924286263331475349263163070978610950486766234107397409979634217974050928014066919223534136219934067215088896161064759214148618049130963680983012705398939807692207987093138939884157043400363128971664499276483693036909962979142844998423058170845192989653278227244556,11392712315645310673556256100365181042182208368042016535682634838624439633464280578340353342992697843456486856323709208993769929825667198124843256857854149171724638555790573818365215224736100981973384410995558183533272266822358013891089919574254939818330873527463833155579817319890250882056946018928950519405481352273564274138745239339555689528027209630484474043328702633331977168775903350557929023233359205813047128230741363083482041365845075249319178793999005856778680811779083784522911420519825713738930903604514930432327435755406403484491228343075922083298289929463367612180095879814334515830338256256962304365507,16128185768089596194287119128971616467728481679140585100708821051566471323843047828854183726318833284371487280925375797724567335316422823058316454263458054143106806709907496680547056853651764349462358556329487313360470751830659004515085115085503406434144518308588359624087795942838829972724870214686385899497790143468039433972576851570857473482249444251166188717970319339154993972583107254198134043017660882069243167380269891894037618164535745069845632928065376946760432598515015966819900477155552863106379035709861023910264232532374352692943776001019180723682584987138149276551856921296644229421379331608912433891787,2216711622729147643119351601279604576561222476671706440839914460051282496368367881534683081378746937805707571316950268212663028051018612966825594397873907399847514954700788018713085783872783310865267981225782070802491186153117333152717062661110252994273036185050571252614763467112197381544773361260703440205625252670499456016034457927577251901944688698835868136916669160283880144324751412122403729270589464975875662168775295336481672192780137765587777958466322897160031233145485380452023766308429956773283861365366429753738225270634870302712702783980696520536919562785018253963272279772947237341901826167911636277398,14567981249611770119460797088791616882610277285940857160650608249425344206528691122331543913667869847178068077135905754757970717904714688019328854767805335556395966314263235325078374161755665460346725642944725762703818596015903905714083108502634334495870792846224658572820537006327415243377500340330706127007814008821793048336577227035431648149947100606065474813247441707074217050761365292856644845629066245995828609114930249956124849463230151850823327413055370077318181578457937246716760725440912216906628033172873929155794447444347775998977195569636526530564164070920144286322379557192066768871877841501668738723305,11562467842115790891804601373773643847126621903349499609152938962148770984937205728801191644445725158989276699296504193090664088648177394705510081647868491010141118677836328015755807190340752111789458182176683494843129204876774659319228937425442946958815453444622877125277511242659189800732695804577042735408856749044867603169231506434230337165888447884043777386886336176295745762185799165141571995448994795987563473269027183930075484844146542824749783851152327060411300732221330038342605240436682988238960554043191119742665518743299119772957848539797927531910599793668616983919654530567233469044356313491217598173963,14001988942247671750781482079375285966547579414294794319094213847379686940578167330959958747320137628734714588973465688779508774703004652572462868416321674738451567199004872420641775754108356291951642382728451341563463073268234897512437292991864411475522021623042299363078178084134670414407763213420631947305174457007699331702204294303015464925310244650403343929391594959891748515738314022772251420423895070351394216428634037166244804545860754313566530581379130190514697248618490807663014153146208137639940027271688234812971813570187637013722635079779830294526604514749212529717398437104564243590356265592707324430248,22660381208680529934440965587759859630365737502029115748369924654698991903261875827625444059798716389150600717053198039271991446052177985348107490095372700835812383361394955848974961135498980301472468398590372824927166661721168913896457190085269560320077063240744390945543298734163933076390800852847268723891846915780866370885782050245477056357544654583119258014409021504561016925378839878361190561580782875056594285065583655990468688145199834395357403106937935824760810934700883413929457207664342072543405193505090717688282434192414638239406093224709925453132516053056802277292184257441746331824932943075086343111278,20472030140330590554727016751322746521411547021589348812503605132754052870300345339453032427074737788538570891246727822818774891000538284023878268779231690147875265496447517546051987993131805558030308294615301233476549529141133753715149811029684466002817709334036803452074715441881335148948617848448549417354051160238759910288354822541817903899839091496273435021826344319441409806973908079330351993159801831003550379943098083992503486981995525990398355622285332802868604496636639655839747683821735810491234886789689703654299736502370849656509374303361111199544583501333765966424789805698080099714702838932727164170265,2453173651401016059883376082702788558595819343620938909718003743834761063920578770151771007440124157356829685449240956671627119096461094862434828440771694576875873539491082895345114445338009283914246401641276451109273726841868022516636570181871922631150553766823691471767095455577358060583652290109547591748476465162423200240371828509110384977101559949176482932811774533277255627251591525680337416653414697852938946477765739575989782561041133771451257557157756072849234217247160968445068150218106127891386897699168070200218755068578136094949985380806928006246790329032200529105916916706533850553672076045608730359951,24113152339438360498818613385483602121911555739122745946787379178133957345957135620586264478203421944425299426192146461629084303328006516447630615633641891356240907180660156167532682435848933370915136668244592305335752238307655218128679169067763462102575980085156721937439825798887974559139719995948680828470417607776837167245694714142889348485597791698351034577938495332154328968099025912022930753095015877561713107591709857548795164690012791766454787725487399290632750389338230767552797412606609844617222343058516288469384643892784348204522341997782682670665258025662990169755315957866286658684293611644496873215267,23048127989879822710411192866890144848102725506107457207672066933390327615164057701868652098516421397166175276204189099923035751642625511125320886106285613893278788342927698548384268560900735111168363954600824026890037073968715675372129633119593307084369015870114545021114363768521678984746381386414166722200844864695581741219036038918650136132423598216731404838838590398569938445014697553573715959930243891120229359688175340044395042982004999256741864583061848148945179825358319553305735497035945950407010348447423433336328707080153581767979294379351950056937128181379551873194994067035954630194182060875682649437666,13618893464695086149676203128264379703835247962620883770951238013108147463339903484787069986025297587613907750851693587285998342458273645890621629308654871877706080796956646324471034007240766614380367007821000885398439611969420081154359024999574164769946112634981576459912811818772491470799900760145047753530968995478407930477477944129573287306569838212654312701822189291272987922653156057983889008935259264244527455188704827518079129994488508788103513618119832400499449348458232904888661877972105894911067928574676593878643851258312142433749927142945806711403413926146774157545099025460329680057003565864119710344042,23894029291617241391144328899509691451082120805949912944383938437120322549284785238294999166576087704069349411280857670919349460489513399500828536265895125463653495907166485758411354581066514943080277665731467417672021474933030712874768858153808012182457456133833868682464778542510979705494991241834256525297885337509013426009068419788422403698033836643374538850826433098217327104341285009528115639746062522009884356634868057714134080806096522631119686584895158882950387390079669636785522392222833493980203199840117132536258676406629318977553433626720193118379634005263005358473104730141003648560474105109737111011794,8925336938516965008397109104514048184046286665452569746388287155124102463448431342748346308295582163969585477123381674515410213967775651281608577967919981280923720344420733336038269189964575637162708585549385406099462739524026684819607311522399446887121322482655436562521377082292558533779186792041587188361186852658931953312216304602575717772394803653647861926317392730789837892117863267885605817028617970756887793540591824273228108598874261690153175536884068161483807477696239392976829822163308261960542651335245650622440817598987961098884462409657203750437907285145610244236094931259734945402603438305753971150592,11949666259971918796589430623190075546810486453882961593114781232790528357171489136086300172564872735213582648459678932324553671446193373613445392996846768949427585353892225809922873734606473958012848905522095066153323414491640379067553063059327565094898320425802881846169782611727703042073646692303198048486923691657532734229486488161759607766287874080676488615866925028524263799527274261471472615111756048644281578781133899646868101860588922113737985515123939591333283772116702698675273675787772365936701715064375893211337204849804346824788133348904362412793959284749560448461044309070434592388006426231060171764771,22250566339370324059402215781976249391077086920660167269541657986285216346026428267640441435642495757683689137264020871118649281135403445710476580606390835296225377720486579495200200373576733192798872047011357659910138900430140520045889539388154712432007987497852789128001047310532391671755193946030519165629053752937739899959567496721448943588557458516035029605073085115080892712303741049416122614132971525567297514147438256957998569093867126816514230762539072531021367441808139154778858187018499802649090111006001230394761758788797026721593274233504527845651968558769656875733771044784061166465882679811351871629592],"BigXj":[{"Coords":[107932666477475802631511202367582748861519739569035537904969017494701526323818,27810089900979531039053592509940878404833992140356119628629019981009106058899]},{"Coords":[70488850009775279003934303461546816167586319901288720095232797816893086714940,21365158033407193885213404713050228625397820553043856269267720323259910113340]},{"Coords":[96704419145309517259142970140495022508494287400107594467439362232020961329299,76628584944766298203991062873793502752240767184659143342509677627090500089962]},{"Coords":[28019161860991754547254544009397503028608838172584402384170752184470432984674,108882834276696603625351040619123218095898824500661874818668494090573839581587]},{"Coords":[69854419615803608419512220164651266075688659942948825382651503385261699188382,86209865999364219341605400066204025416938700532196803014526015416182305901566]},{"Coords":[55707469940275855599640808250448173151230633312005616373715718152006593734016,71581471827456608524472614862044126332419275513283203837579704443605501341979]},{"Coords":[31537542564214197931115404850756486671358385103785295421162883744455005249506,31003647934233069190792056145926504346119044635106496026002117518163562078840]},{"Coords":[71459743938853567115182393388387842195822211722537627655935266215390092032802,105621264392663357649957909617094860377111556629887291515711877643951632476111]},{"Coords":[100170179262204638729042299933877814060918019584852761639094198183345507736585,28900877763089774489040863107152228045173480683157331262486804734772631569442]},{"Coords":[3393930126761759176345687233491451168543634500428196687848693751772795262696,55773871461934232294712308387072487465508923595028614508001564000526922809830]},{"Coords":[35436174997161384450863357581481493940397620545951968086180770941965008242533,22941476771782647278770334144010957938195504420883358055133977993491797250976]},{"Coords":[20742591764203230819083960194719627433799141307841650214987882235851644570480,36792680781195360005281832466704518433303594582044389944698351592636972852101]},{"Coords":[78822613167932563650341174247543824338627391764838115664582901884987316485415,29305611808246076472515388603014476455888609363718621630903671994111327870746]},{"Coords":[106662917025753316359017201639970683777210765763056751174154469380644107823988,38376047705320523688829546978146661452201839032747402442602961204420046730181]},{"Coords":[50131378328647772110850225682895027165473791107252577081428683178756073747030,6484525664721285218064077598136507537588284647694850022336064622644441747313]},{"Coords":[63814576207919556970263190432671978386229401573575575774195362165468317841987,52351921007743438678847732376277019290979039258214198300788054101141627584484]},{"Coords":[33074537919982031116943260590723731125144796968052633499149040111855190089892,52462876494517613825042650703891412581466209764861573326649361336309483684004]},{"Coords":[46337244846970653814521818706394664913446423803670640514811670889644615970917,60622380590936530234720907025041106487069869976400399621024354043945489694205]},{"Coords":[68932201886808999446322681662607675293176822755681592496851252047161893154617,102558540543641758967834783938704783088913683989892796677072783324191846467831]},{"Coords":[47093684301174743530406169926797075725911173707597448168332637736184121729220,74517549523358620639964596401882412428175945976473031695393603496712918162101]}],"PaillierPKs":[{"N":22709559588116531632086995360614881758145847958604375585917706994116168375700793376291131544827864145364687259129107134734036373558516565338923959924703156876435469021413354399418993619174071015237246272863140297401272631661028437511282301913323857011886496541494453371682094558243513835287198378640755589750985308457641295136946180231598093936765306071278862423297167033582450972276390473663053961764398615170355333807856718875047329620163477731845253445115727590642190491372191245975524943279344261890117425706855830582201691939059698357650223528988243289388677629074389631868130733940366531485671699566601163615661},{"N":23443957150234287781524191819714980056334495753799141564738532515877512840928595615570444488815473106829833471979932833846134743028112638013245259429585839683894162551870479232892081727695293106142145837752188330564435054323350976552725925455074206192778580457152750035194725712966851385101176362564718763658489874740341398176203077931510475924742361380746164713522692182335455005818339528332609035897638651762193188267900136476551393608916669622907100712471489443414455950510417300576764177277906265582678299980344888299166427651633758323734973558749488731824311505669417847053850760848940423643750519510719400853833},{"N":22287028689259504755807149120904050002396020193634043129060485604472139332057712093383073269246020913354970143960065213561811698182428208504100112877284663913440710058603853492628849020664094889598583038642474751945815658301741607940280803922553940685657785019086609257141579057485855668397778602262577280637009340765489166395694519909332104264865369924039797553524566502151933416185073911748303993059047774791584591703105106437459703251723998725467328206119091524784524659754164199098692948259716816125731645175450298738430174307931086107554346505367596601043514472572775722114263120820933996056766066990263737006037},{"N":21778455942403717802437188616130445569467912356333711523204106321468333958250985526522676150458521139952234508699903096368286173136552336834061186195705878795885628080532376972447127537374960052755412900354192740274699607194495256559382391407619506149746521336051948176770581697936379025338953179299724284866217851767053361169462746892201032000776732741861429352495405542992367041691709412944529198233031428083828538853890568987466209820731450551650370292813109604532198408719181905952928419308306626664706489746484860069309396704199131581338218405332252354539932883923534658047809067343949198229794022084007329008301},{"N":29488834801717020514549557511738862835006604218586783270956635930974777840977382736818004943434492491272083417763033198615963445455042431681833978353867438176815774128330303688651059852719975859250721567522453513175104614385098138081209372251486732213899964978141377939387124226524201851559541320231331748973500724292675746395999336271645347092285737228923411234511145980962423027637945866866145915490526131803713409632083226573065035861386075817821231913413262072294132940186959486615122177174171466978866072639941945123654758187894442697758141328636666389957637295324259708835849664958476600091423260629670847006421},{"N":25268781854018641821625117526035412649921406362359871346957405856614663043063881662682001256500050697385215601589085313282671061645985003913281457834036290368462929918763869754871955608135979298238482437377851913552755913815405018774915484866488142406303297444296659799278477225336231564636195441498040062964451813900346208766721654100661710718867197194733579941984196715209521167970358227552984230489600141394198144474928084583860744656840175887777161454380202188440178263993042579519816969496156562013371732648143667185817225623397113488180419930136011024805515953457443050643425221010148081098971618629282508806153},{"N":24077030535873838147372990238338423111894661719881851208383511932936303788667059523325649062922462968249640702042151293306587810036594125879862518141403476609262478705296844024060273562609291573351215091787555942245982552314643486135981274381916357213038852978171063476276539384812002232533351978097782562939609101707149234139391638125337919614533689982228496010017193463462456934753130533077727108799001253943486336718218272844533405886783727956436625979626270665501149887064412642510585330023269746464208739229956710668053204092869919317416558618819105166451453240320574158658174090376334547079951345889147202424197},{"N":24121210025310295136286367465067731861316363403302816495348899075683542883649267862423504534408270521528934904000166037695519824119622953526124849500602533136680339478221010232315859804261374907195769559713293619918530079931895046819311703445607618111244570268187554380693098539122537784889700313005700764528116670706472264450599583329582635827622249925780628859318211609939169828662135675938640346560681426019582628979275573701346775265344080547061237809761964885298244705276139799178175782218409921284339726928435810584460742981474010807766522632224843035722465220411812727073796692626221078545796203402892726398073},{"N":26956782591324520026471701264974010002551430844929064558517606333109244333104364565707985261498791802440691867651722784210280888161145432103606824079477489895607158911928686613189674072708812330140444741131333062722881890279580684791181148664415766399323289281546841599984936640417820094077391333063403828290767644884268872176714175866593843027335088472731880830448148161449695591865312724115778446298294191846018327598860718546463796845910458753293225328770367785304521228332493000905274903063796918859478998380272311510096333363160486944174426731511854410356169028732110892177884127982236790065871058497952170624401},{"N":26249557760815986852034237905417683014048371748204856284575862917968310785883486514046189771449794410062311941320778404041317694258818896788913080156960590072834802977027251267292982532721343074208805165986815554608059680417209847673748867108719737464989377176319950884300513507127044766841349776517208994115342645229445634306184178062065483947743824551463650982111893910449653832587022792656303977671598375329018430362166017195461057586254287305421091325058340750141735758488815547176349755224428765382123772435956499576803085012124378000542928725389368171404677133866847871236251441021957443853014282022367009685861},{"N":29234737641692976595774236923019314216135921756073342884203680618120226690739166288052322806435356115092650761656136403373733697692050475566331202817414926309882834844059857181882811689758047525443057988160495074334079542319370840285641441603178202467820462588826229922786870937847036888109767951604636584098102615282750014508387427358079100450062680715472456836097388046216848854107984658532128468648705497171277133763535425127577293318939184956565230142817502839346792604559307183239212332206857888330805061669830296766718735240517983609617995793272006065303892130080909658027060291496416496673503247698087863812741},{"N":23656386949781378983561509210223997485938600678969404520355733863050336777307520388106184053630795530040934267843013912848246799628076757878172461266778291537251825140340096706161543161977283845709058224884977213986434571463756330276479208682952096086332163009127424608568458165322976353036562065434426650045708578336603634894217912009997772105108262453019882143577371634194078714264992380438885990335741008955488808069468796086801023973076920357953123958081822096146124559004458043648352764252390085772923647155984579633692639191141425745475545839873632550694666801559519849238477058285069280151324843991596401646381},{"N":23799985430892428550287426639163393896421663100337917557737015159273107046495772196531619480943457572757018895004491581880198797117841320493538657520011738472038586707181276745476787089472101888983238214242261897466709975139313526918983914349699164310009561585851364405464439780111046692215844366708075439030620693316351016954915727063684631173044817825576871464988585229583331260702104268887569088888141481975510438061934915565917441018736997897082388887244599485050548831301667982348795441755679549415459512278548728977097478254566801983960996625453970296380670902503277224729081061542066926552900097298958795919921},{"N":23398981485141581657111580810187356464859260220476400872431878471724619284703169207796437272649895475435460945312990810473873577007856956495840504596329080928974891464665270653430872926713471055976901497303072174459471872022720981442223753911960555794844008812776454183058593769792366230853507105586338576934054995838272457499054915439455088496111012971850904735289245691042597216634196809202787360353382667100073960437339209464655220130141692780283364216457426778903461083049390591667885095066567970867147659207581183606534554025283663685502553767113396678790806758816850832944906936477595076662914396730813902861273},{"N":24645804484208008107774215519843481629641338685651268289287772114412526440944111199969614165736177320304962312701073205538949325003439610780511806547845684862319242490345551374064725883323450769869814834613757570218276860284970150303912936880248283750218053176729988470901025014948637258535944241625099061769802348376561541469733700398108049774899180411488580995483844861534070436865153589414051441506488195269353530135159150725450897767102214976100194473384482425657735122085724544900424323758582364844065404991831422328546732900258700279735848044809564185617079126240413557300335393565946088211107690073344594774029},{"N":23664465666512928010084076006211208070039097235865486451752383277009646489200010451773766854885315852604650109050180997494686499532996982524560956955784208153283884502900612829692080614937231941501430129101050170848135543483642879522140453631883679490750446245717832265221232589489474380464199065201167874127465810334527670252907568617820949350516778153996202871756067806159248004814563340677682071536108582393686279672503548392243690499337315202892692273695083478754736347613219568092769421161385508903701795824994052294039246344316342377047969959511601521901736714883097032290625287691937066549723767146291790114657},{"N":22165609813091667259068375406991183583538522584875908765309739098448534648989953434651686788146626220283972510122914357995219529654582068510398362007031593307847827533082059785375352080923687640731375327188268078188971415753864060723639564145551626769223269559344648109409611860616931934210627553354435590764505138165455042290624193631088250055962033560484870481238850988856340320616852463026890656813658017413542014132396994215496811530247375977104307808133564653689276479112825279061966541271092780066027501498091088819663615972345385914896991989394778860649710938578818683661928070093400675043514978345177529652389},{"N":24352137164919775060505902875895344669551891343219870713119659495462675754712808458066602996522267529841963340495194383402601416044030073771848283771276922546693343786778909195920195728052430645791682092298169597213540403251589258864324656830830912032021695409682689693414793104678019843226941004344886835923010707685858497420014814885662783481710790760565625597934856999445792014460533464855807508832344902590088930105318969772303090927340774137226985715726042801943592444113021856673268564036683304420372700405680896320106848396385562893886698977710031223312091933030330629827691164100994176634674536649129152931477},{"N":24388425323514301995345880181969195093222141730097776998750148283180811486102209130079655780738706237274584643472954914248041737365215477795339570700387683883122567928523036945799350046333477704674538444513982433086664207664876244841911099162128315338715496189423824903190803189243082722638413039421880070666657272413079871744422617706188003161639646693501252928939859937588136677607569634910081471599993513483449765647227570734163189729311880395414909879933139619835138785852476313690881562300854512419432999005203281002911021482679309149225773391703345476483158302622073477221903694296256566718995262186459619480089},{"N":21604728584405813409256303272593334134333518895675489098410576803850613670962405878762275711641486977471395420657043551402890823783906820971712770494973201278527635005537714974340519544361402189093858595896231890523544098157276831993549216761475195055251372273062282101577640320665049775934814411518181030603401788639796770568692007642464803606076672769360069701571162199680486773757848273630254180550410784187377722267755203781450486589090106764541644204842436002216866597611146281471192249537747681020939314396157603364418120170135828923470079746789793341042476885118587449440114091973976013051496269141578521399429}],"ECDSAPub":{"Coords":[82191134404558877049244897640959846424169542769967270904890689024123037541855,102677683688073592669768840687667774566029618427936181452214529135934890152533]}} \ No newline at end of file diff --git a/test/_fixtures/keygen_data_8.json b/test/_fixtures/keygen_data_8.json deleted file mode 100644 index ec5b6f44..00000000 --- a/test/_fixtures/keygen_data_8.json +++ /dev/null @@ -1 +0,0 @@ -{"PaillierSK":{"N":26956782591324520026471701264974010002551430844929064558517606333109244333104364565707985261498791802440691867651722784210280888161145432103606824079477489895607158911928686613189674072708812330140444741131333062722881890279580684791181148664415766399323289281546841599984936640417820094077391333063403828290767644884268872176714175866593843027335088472731880830448148161449695591865312724115778446298294191846018327598860718546463796845910458753293225328770367785304521228332493000905274903063796918859478998380272311510096333363160486944174426731511854410356169028732110892177884127982236790065871058497952170624401,"LambdaN":13478391295662260013235850632487005001275715422464532279258803166554622166552182282853992630749395901220345933825861392105140444080572716051803412039738744947803579455964343306594837036354406165070222370565666531361440945139790342395590574332207883199661644640773420799992468320208910047038695666531701914145219339637397058789469207467433791703378271605824139505855098560203705223874850729547136096378291385530632353187396325332265818339740263998653894917827187230617600330483763356350104977214965717317249449442578089700272257544707273779847062565420539724790673186927874427327829660110783931171604445230701238784146,"PhiN":26956782591324520026471701264974010002551430844929064558517606333109244333104364565707985261498791802440691867651722784210280888161145432103606824079477489895607158911928686613189674072708812330140444741131333062722881890279580684791181148664415766399323289281546841599984936640417820094077391333063403828290438679274794117578938414934867583406756543211648279011710197120407410447749701459094272192756582771061264706374792650664531636679480527997307789835654374461235200660967526712700209954429931434634498898885156179400544515089414547559694125130841079449581346373855748854655659320221567862343208890461402477568292},"NTildei":26992054981062895613627607261766199835432715284801801749398907129229048796737348701447929605174559094984645968238323112325575430714478210726667128296579144479334211667227791506349731191531989884599385537951555136889431648507040431760656554949203843341649040209953028348323032563665739842658324687215759862340780391326904566525914822596715715051383829453805370490781186878600411802395931887164480044180689343432959074712196207660797594065685195126347713904229309636698471250350144098081500570797555478540127343168177689831999672573508345263924360426808488416307292793876390765153143370885661040432948994217496537757037,"H1i":26798335028033483015595995885818313899416775173626251303214746152969095667991567148306665607431284548931904800914249634868412622200397325111043206330920355980127737464934048444736064518743501106031852408038680600709174828761299003903687195970226223339349891916494477088540593890862438659139800883091968208023580402075789145180476758769233643214633776274238005081673345069570155874633220460290011162900873068065044353387042255376321331197145839355270876626896209116281706932058419419985043694684968787877580180579063249938562059688827441196772120556845945709093021801017783532024267437712559776698525435075445312453530,"H2i":11562467842115790891804601373773643847126621903349499609152938962148770984937205728801191644445725158989276699296504193090664088648177394705510081647868491010141118677836328015755807190340752111789458182176683494843129204876774659319228937425442946958815453444622877125277511242659189800732695804577042735408856749044867603169231506434230337165888447884043777386886336176295745762185799165141571995448994795987563473269027183930075484844146542824749783851152327060411300732221330038342605240436682988238960554043191119742665518743299119772957848539797927531910599793668616983919654530567233469044356313491217598173963,"Alpha":16034596511836421371566569613711314357553046973177342834438054816840064110478959860685737732815245812344277141543664933728079610839769943964625971698232939208854872132870089208429093040661651100219153176620002908849678435154073485346313463214921828809138772273923617448503679232868548330202288016021465779544418176011075132464575181752678748052862309873709067002035568820776371186900818206508666158201751985647128557848241233185927500519895989593955143561823356666778232088515943851126601706457354515351433922991999211292794347385106161731607756977092700168499614204322454220713290426461624070434170611758544107906925,"Beta":428202150434922579999434259701390794042504656273153301031790096095237351124029460434466735792923581594238332687194707988503844022893466234993135260365301536524138508517110154823475665187192233134697264886618155366466971410900047001609488504335537944406622145051940482882895908164407042143390075927933908485238356727631148620842297898949658998615725064646810808856807644403234024327237558491032232476419873313168653264631455364606588895988277544262793784418226154571978865706031246433388190528780882813502849253489738123033323425532096040395646595184872089125215226351248538264589089024326587700210435837277514025584,"P":82228025189549840276759456298384124219845709899959070143965605219793835614998650300073085756043900076851579037031082557329206334644251716813365426270922217751881253807031983484341677501323543192591714986678280319273913247875705070769154906305654819093614389483835750814714888723064343677690967913499560144421,"Q":82064645596320517709813368353088987227805465722891612250766053225711225867187944951453157954781743586774291722866175362956745865449174748232665911777193376202435543403134590523232602664589487776030569312289050648097147437654781499606526675962605981942698685857137531851712667968607891052560648865182780258579,"Xi":44220067680666601380464375755971052183608630049063068430685676172068919245713,"ShareID":70024534756929667616115849317753032895580033020239899587896153938577578972757,"Ks":[70024534756929667616115849317753032895580033020239899587896153938577578972749,70024534756929667616115849317753032895580033020239899587896153938577578972750,70024534756929667616115849317753032895580033020239899587896153938577578972751,70024534756929667616115849317753032895580033020239899587896153938577578972752,70024534756929667616115849317753032895580033020239899587896153938577578972753,70024534756929667616115849317753032895580033020239899587896153938577578972754,70024534756929667616115849317753032895580033020239899587896153938577578972755,70024534756929667616115849317753032895580033020239899587896153938577578972756,70024534756929667616115849317753032895580033020239899587896153938577578972757,70024534756929667616115849317753032895580033020239899587896153938577578972758,70024534756929667616115849317753032895580033020239899587896153938577578972759,70024534756929667616115849317753032895580033020239899587896153938577578972760,70024534756929667616115849317753032895580033020239899587896153938577578972761,70024534756929667616115849317753032895580033020239899587896153938577578972762,70024534756929667616115849317753032895580033020239899587896153938577578972763,70024534756929667616115849317753032895580033020239899587896153938577578972764,70024534756929667616115849317753032895580033020239899587896153938577578972765,70024534756929667616115849317753032895580033020239899587896153938577578972766,70024534756929667616115849317753032895580033020239899587896153938577578972767,70024534756929667616115849317753032895580033020239899587896153938577578972768],"NTildej":[24366917239515824974480442558600034492208859976504581465004349103795399783288421050831073024860369440303795551299953821996018530997630686285237603133194573622718124597460737572013930327249120648302190449742363261573076443183981343509885970573178298207488759436277685910850783372123719807298277837194569211839837465137044422691734879346883675317045008891659749391963717253895556693016508386391015178130161988317310806894350108084212611277788190739249760699147435109968242744158314817905689533615803297627887736048945645075792686416602832677541152918424023805280241226851534199867283487943291927564365275467582581271053,24760645214372673899925400730945520473062951341429554908754617530444794660401836428698520741646966955149111758288194803110363170964340801072472223878272430220722034553855593944561986134993071918255771235073978495918874383067260043443905506152815841034811512510858407909698555608803009379935760654878372301870950275270724586431009354962811874333750886958869738872804882633350285507993032763679234057221556156642769183354423672540429587887851343483914923600996425040023829456198369968692844034517720322057627565080062766276792221145223750390964637842847390939964073972850018793739320669513533403812272268817559996728177,24335507174653830446370401218472354012341984065893977351232759664219171991998539382418393419142907217562914494098827810315198583692551476438232634594991137003295122745831430159532586451010818106345725278793436836406022036374386618877645773128457664942790386603953998246404350465143928182109615440037926218085391564421745517307996722808502413850991173460229650178023548969664557299385141472097112836353938598657235574893430259143862369227601052831476146199261368117297723539373329843815951236997008000605506966102265798289158763516254914284024816124992986001907541315389832578466014006010753144367487203071067653140017,25353120959776139123294155818546513426444543204238814947681743626639583989194265533184090862296087842527526282860965927846515276605818147773016966742984780344247645856238734726222917730082852005118152200740071409410429096265046046476115230269737050878141459099734884888260830179970728221214610731604157017545322535971152193773221758709395769765431078738204491094323008301356895841037132747444047830530409305765562694358003007195242702308043142399969256485870876259711230128209178441443167004632638027691911658424285106297785382963002590496015895572427776988235599297735903480964253948429971597628412447354914215359401,29849885402332341621158797110436829396646924395042456662853244309209629024048299162272105169817115314715561658954210859089958590864101117136365470947498907594068557026997249170993874294161892140147876022164668279854630146959174794473879294364568105935870579392660025720467645329300426773479121856766502569984218591054914763859996476236063750210092775547343099066989888106146219058807079888624162205626100491953381078296178689026680702514982189001052448223393538379392778307314168895065497502603308074595916000270844935723623383768691838356870704054233137068509668072099435779943491520206735659166266930856700483211181,24303346306264095483727907643814355785838936488512300414348142784703917728792656928355740144163123550572150171398192480623395181408570425672723511597546032812698562984141032629389936754449924613948711482870260420456913877526422469201798411517711928654451945040790337077196569240216228957228264615761147375423719114756511538399142649755527243797217920772594702713281103939163745422429156605226253637010451757984598979666631182977221341184990723224510127460146263007980086670575857365789365543477249518437176817144448210584125518855115672157465775432933601089465408090382773104140011964681476656187299047937685144419517,22663176204438991528847068755997123453980704364589354833944958947785385672266299429364336994892902925142195136026995771544990684289261678272550855925683439714148609523477977179010696117909805695701859018966669150739407573082987363056991238107146673103957237104655136409343763639221993038484198677605284199701204669351878989982962102150055730219424526668206392140254467740757469800556697236694088468633665970603098311956910105499246381935436511205439918717236853087415401432056630404175846159692661637004967185601880460514710913037913825633119857629058574151126418040291146967097319384900092639447317903904481362864461,22214406206988221120543596573138808869312423548073528052574227838235500966558488375856182495656208729058219131190228351185002058116343873479198633895772314072671413818939926736318457089940649635331152484030046857163634723835906012553106874988855844579826872824922610248380139635284283310239564378546105159549071234915504686574306652852285495484227675227079507874801353534124836509674143920296971261218965184384289987323806590503991373066703353411925035343072343417173322682200148341574699074894310006001608609036165489022667366737175975429277190015768847957906950063130121905159960720849686267420829596753652148430921,26992054981062895613627607261766199835432715284801801749398907129229048796737348701447929605174559094984645968238323112325575430714478210726667128296579144479334211667227791506349731191531989884599385537951555136889431648507040431760656554949203843341649040209953028348323032563665739842658324687215759862340780391326904566525914822596715715051383829453805370490781186878600411802395931887164480044180689343432959074712196207660797594065685195126347713904229309636698471250350144098081500570797555478540127343168177689831999672573508345263924360426808488416307292793876390765153143370885661040432948994217496537757037,26883601429347938201866566412436359463282736845136879263977010812101340295160083165177085686402734295128738223195845941394861534416081222492334460738589328436684156816061652087254848610272225814333318089300032442695939753398569200283276971829978683842747584203047240258517693679059389343721225356421724973291878661622168915849085533925700422984364421907650824486413330797840743205222070155228532990351439410717713883609930796830287062705670943579996135308824473851899048361474382520461452309816639861239026761274994745411785747289015653392872405877863169928875880404134872170564729075194783267248873823339090853461089,26675898204441883357756938810501612911006923314113656530850642169244358619346060171584915468088311545710004060513299980257359925141562861692364285790755062927815783069742814310907363159744172010043214941961935176791603921250085454102936917126214113873120405883118273636844903335000473865105148550590214462929117780405311499444885924770449779157142014006830224170685309315154438797997384633339817640551850145502452900467824909085498261391267709054450200313476628713250795473832792093350711410373115197160491274663551092524073340836221397352664353235247831158949819050115215290772010284539607969271690219902603821582657,24003425727589170532663869192322030538943945148822062399216337010945961427378027710524236529045097740008239529891693854573603730323074574387306355517555029571396270483790272731994105657673718134894396083438028861748333502807033025075738141563799251049728691667635160338770958887288469952328987442729682278796947289053518986771911122562542149441355230810099948748099507142060010177281487688268845292432759376770532767245812643377347484905682286529844081415426101824234408564247618590677966518836555327692461478356122297916534505785216531638872958168430321684571355170353352724268927780693184938724886624339722183259421,20030939948791694094921106997836532434578994294403521371501479100010836848962747077471607238761388497679145378822499150459403963802326636975589780084279335637070321781313502047027883154267014733038805978970710176410579107929485519779112034850622531520287022547371539439386174878773544830750041302618611105173361798826270784808992652396596786821436733488377837349284332001375201088424331364286550732742247150161681889289004480841207149941594126907534285607712061943572341899739867922754683103581617612214747009636033814762750497302268078808823665919929249386647148964298452596399586628310864464196272071720395192133489,26870132374951553243581913321377246229771795848056596419360924847337540300978229013002723427615100062690126686631934134732102152941473371391783556453709425066357685692036492637888980565254013131275256724381428020710512422112788440607830591932440438849890272166273212125255293837259298348084558313308788645038416611482549103781514142985867750527012906984385110191046837459757808864741583473057341019452578423080700589131792924736182910584032669431737863108910781465411300404077532371983623221078943741087750842713540302692591604785862604978245628364756611702919842339423052849035969584933072813435912401288087398604921,25781309885353513172762417920559862373653633766198016154431702305819993747433843312735651525316421555779956949217599915608247344211910767561492880228357017663462131839160610108626231391786518524635537763772771732022138542377442385539024671393136972077400774477946909998449518641822004119697621239956294809097040644518494643152713366295240127317300380586618659118989790014789381034410565903140125870883802621234783419468923863900036725871332435066935174631607488613764393382263135690909855298574769132391272005233712859895795189174927584736869111985784832037628893972777670733794612566699959726190117505644366934694141,31307948529511772422092081620376528723351660195178245630091738647550584183808045529448767036136429258045017880313805169530174754560039519751935200016137594525166410173049351154227454247975670642857061354284229524586536451868860885813714578893448403685065908393856455188372709054731049692863370865677701391460552630927498629863324809550335559817235997586126538332699529118621351625401581293898546298753212618743290610874832103267345624474884402930254336353399762494911879332332316505133643206864735435683656288655072941785814640312959405902536938955107787448304325831133755028455554235924936888965889253927315459519249,31466961232199038206393986199348595708256863299176374148227521484010795684260339468184532260347996789772040097386032241172658309499404470468218492541809815234208995118730337303514831281668817831605535229415260143432704661750281094187807328676322407373913844432440683972812394664524853699586055958635280164067281091412249301309251915772998531080870705450343112678791059297982033179252277552572737658097615320288170699408198262523087724946180097295208523307748556241283633289461565623961341136472687878275672606572269060361808996126027608464429012339688636176786148346418213288770613540923635302757146988963110333316781,23282315206683722596094270562333648753439051790898100314922005841725502497093211800334393760989042727597691714582193235713639238284172358062468387217727181092939568556559834956352385929118617242221861532950969685568622107078283773942779583910577282365015752267710687089071780861330758005577221151609134583129504364837341221471368611555190375227501319216183854908348755278500330379812379883892909358375120467449644585220805660246421673078936109889143381498767668445860590513918867961598096050612727306953235332046855083649560662539716078578551485777683734466740521988744140757231408246451261769915726695959921765032997,25091337650425677853684475917739333556784369056148930585749057080859640921803414967035499248336819782755466354804640016025044002503128223804670636762370700960312352761126598625504662989187540799606658080278007629478214427447535566556662347722562243890754037326739900472696108231869156013516647618154210840364364919089100138905499001603568088340085110153219085814807927945152975657929969505495173887189020701090313994816079981109190512102678874334588894915787220152560380696231794377692004958328931143825599595181025003997691503128188855105160353707735893011124272774335559316106266020514461879401833904958202494061001,23827659784682250604442454473547796888740733968924087692522596947210995569582513002946432005898923676155984614087332560259943866897650716815951119740918614656692843602108809220144973266843900928325168304104193270024169252614460073574472494366384192690720704949267653372513388389564250659367518167586555169618994627094576635848093242114762843534765611200879960614166650643590955853799316870443339993391685970472310294098785089036360647811365521892090305001153074254408707786436158648387047030717269669710808288303673434511182840032065481730245714970751088620360458026112893074508503440200554493648329036195258926190733],"H1j":[10024025457847388392610646066298514243370787348338532750631360639913721829629888261433439914402718667116400994500512300775136069581637894623537510481269716297031115527602912311323880048384727148486222115704187210174101029381357780998875764924841198846224052749406474209451141960414618133437662859572202780961023516801781475926753784006105642819239485607653090319392184244933555747381471676665633830261574288841173438644814600240117247473386184548108338325639763390271130259071021112922069642676901166841167199223435257080313456925802886649375691201308332777566495693037805296244451983094124223174758130752134991251259,5540062908155010932513159905564312164946355979316528931149460136278288806659772940588319017326328094974853633874382463976169195549392127817304835111543615409573476314059060881338397061412436243810139473181382772109210271463439624149555390649740374635589527762045108740275882849527695527198385706268316952416235237543464363519203592980469637771074904708426157233888490918907104014536294284692202685017252106362206847500376336741712522098586355602155374318553270307953934712780754034315941245597336144803859821983984428471938659224631751193248483706020880124594451403191977963618445462632103562894369717754678411970157,7294264017980791887588541945948527964732046841763268733085682296431903566128312881527716171471646888128877802321111011007465120561544014131687975703500639986893207003039277321438260744935109724584373350656877837682253991859961109267518971621013884413991023503512551591742311046398421527897782104779903020623974791981836764750802585775470044046719785755322826006147242995196401054126149520747563133877218253475355114168420889541015916952420416242677374123641966631897855997275959219115766326404348502491490713975699304986526310844436386187304302850704361098476666746013218735172029033252239873173053183420490728457969,9501218113444747046512167891740890620022448184208745016727575118910400114702536042272711158066289559244823855716406559728787015762712355980741317225927051706399078523944764818407725281098361563758658548109686452917704268397282493394145905917631338144130662786869889947744035847462163212831976185178442327943506290185820473986106267053867388409405767987475830498385924106417897644176202343305711004215516685101951487059182051580662118563531777396290757514364141633090265347173402382594862836539162320425532069699769291364183133350523773491418365804493761877536170212947415911627316964969637971056063543234131063060179,15798786414829945409990379475347092437191933825852017565866427461531342919124334651290935627606571949258216191049074056902849155877229528326934734579833314251986756112086465450838437292200045064209850028597082873902388658379469441564667669701765841537160309665720024332706155566138689213961078587239980763899119769146527020365437175547591597253422987241897416697834718145603044863506510817025716990741255205962477142190641478116356939618991137525950385435749637759382858607750867147376236491183474725313362128439752969796168290272602393139910089130691220986679844969299810559606706770072567820176650336982258175656069,9335293725151276608993402038690349490322365392613976918346481216796454921531989892317554215286413208524498017721329770260220214739976276463115767516661469141467987234112799014449837377419827917305931640946522287484467505347102693011074644574833321939291182991369361351550845549986196632347752029739003400876962371840702829213086378506709453044627207644282674209652698873675164479665879605315024759424379670463637654094152277916485019222649587458037242630015801094579916767996040360006216068355347853880839844214694922100092515535187976540400673364286904799817798092386690711558542096052961324458158162316849747049802,11928753658530568234030789407795275088740952723187227006977773559909074576164921817701724786519460916583196165018163510774039491890001017299531322520325627826211812869166690445989428530376091680807701566180854522056382923625327483414081231404244458202347765643506681512770879868073522880161513490523543914681148241833246281106290736532685240004675518845019764469048182810211653160870255293592651339935498048137995182398802459841631852186888112285076188858851763824315081771524248572039785549974159773606819792419731561145595921289694471859455550756883293661073453125644271107011011223441502328961618975292599286540534,3281434421303304451534752490245528887879239197847942017450979313729063086003376295872507109217827492860554007309921835555072782997029442232019030164252143769859146809734506916627953872016140383116721175515392391691229687480990552997729334078523811275423771755788388400181281035140972235710503768780977567025805917901565574387698038208089499892809008311004708551092635216129712077377038639345772519472468677180077197280667928734700336917165150723117546746441573171713790905181182966896063824517476166929486302044010896828146903022644169171194514314475627079949830761751962833520028060036397259454122764395181619471620,26798335028033483015595995885818313899416775173626251303214746152969095667991567148306665607431284548931904800914249634868412622200397325111043206330920355980127737464934048444736064518743501106031852408038680600709174828761299003903687195970226223339349891916494477088540593890862438659139800883091968208023580402075789145180476758769233643214633776274238005081673345069570155874633220460290011162900873068065044353387042255376321331197145839355270876626896209116281706932058419419985043694684968787877580180579063249938562059688827441196772120556845945709093021801017783532024267437712559776698525435075445312453530,24379152218258906482492311550879222904032299657142525355457269472724266562417862087603238266608926068245433152992105088073531452805187189356790567435332219230651301413762858849116755355885877930185483851669316692179467165059725168458003778120562044911094551614016767541895327106348965256725682881898632251239010971342586248735804355885933092854432575702106523584026168029150861398417670162335859972289331761535391135324650197244391340985538289280848512779115086784546807731473605687728417756436783747883720385660475468617431753857425268742613699673867257484976547014884809737803594445736805689004998882232608324939099,13639308363088689304499602606006748747737150113207488794697369879342136632158898637529348398215211110838650184450613858330095458701807309615170814350482223259077017423473614957663630359321153124867291328161758174033028972972743424022771180662104664036306205285576270109455984955077713540350117086087967860191108122028954920957836754439818988959156002918996099715859267715547983808966864149367592758343569651869960032231333418638792990340363087590766121964019626938526976202582697949104351928836667810574924696014475214582129919944765647849262874087078594478919124600690586319504349329877883243753775251538124197406468,20806324398112704184576243642308446225385834167758222047710915865491553221121456559290405385050181445190026351137186843498701962906728774890279265822922302262674344261443633266351787522423584433088856438680222017039801221837510594012303704942258177163584539612102842678739854493210477613035711103258550560273478479277362352841578985334600196007452719273341052878795457240578018430753780869150598290734861026318283861569123861098217259089119729724503263571923384603566241538064572968952230647186501970761685868678332574820155746476145383468962025352911125509572618602029024652380792594855032573631797517407433780124767,2984534567830588608251691688517562019886934976940239944296177755224193834812017598586976214786265618202828155437088641819872658344085523203617440122990791586663797768559098311449463943487720199704106941788760276946864277974792415345700942642550277726023952217616537482804161899962996481893200668973584167349538844293867619144628567178172496162265433563681342772983054368775009029385174850706677287569940753312983986212778939947598815595002848721076684937312652495527309505744053588382568512842786184034878250903582357463020880854201625144449160004603244837252628379531756302498757122746553391615927560808029960266625,19681285575282653686371866964026575635551812532880664611876190222601081859688141586553347439412758942096084877111883472375168961225184324383968489352875717670106440217006572540605411871630725641391171380023993395232691314662393923848318294382993540810449491616527524662991307157899373490742858664974644838212306475173795164847929404327886006104677091872987173592834296913553225843321065615965897920646645086083927169011172363123935140462214285019059726271437492418936191962060610764641005376370506280067258828239222704103600176916708092576268163001234852617058752894380793333304339677721072271552272594404600260363861,17663259858420311330651766819499911841067663794994694318257191199872170158137865025958007148817857781638492835306514771303332749042829120815317355608633338052028835394702531720709875380635913577846095483312528431723891955957026638053673584169905737554185634030129649039016018518994356839547241764882921390944931575304729587593422442361903863687010228628846862342208853396044641495867576785861723973159597871732538239253298128840563941065388954934551651787261972744712209405583851147359110032083949020208533161960188954813739180009449972293158373021060141688387818302891372350131649013502869609299334048318236045598871,5298970575809274629438935393989318057761764519542767586120836445032263316761487525811021815951911099884013107458570792999455520743412617129043815044943875968069243444902286481323598638834526377417104328855033745156522241109248831526582827196555064828920153555458318257230359794631019067306886747836486535385255549193636393132450664433886493509087281083390290568729201571601929480774638279112348846248022706481056446460853658284203145411150560753280109970030570227674159359532427547564201906120131477615407933400264643596572008335881981150704968737407428485573362254058660832170694074403410494545950595818012264895776,15913403370317249903846545253264583237445426368566054050873204733344285093615027647693061965382356514660489490017289737470216855339451599323161686141225364898734459213317143215419647354792387760477998230133600223913390244574171627679693591136928514907378143973333998319592583595882555481681002615976566590485876365765518571760268938260544608828017208378436062792581980653043467844284389159435925884731521336805223809049222649874552372676573497110509098941429212961378401761184902390250234585999298135037647853709390803265128558710383431672409386841314821848625953345836234945114508861921890833145094378447829164485787,2290909140884019351426250008814545735225813230804981825833168241438120125584365814035371010990772186759925886882837107545743421629040643022748869446583860483172598682089887676740059939878553272595424436357723367398096377972698494175572434136161599049698027302739164581483237687791238697379241703838109655701932792883820617202754352159209515775921392841098109717647668579384288444138762640166641466203925793570935398566304261495839675905915184706531257340555764797653386663178215604213661066377035729358506114543600757612373813217341582075351741934166661911856401287953329256496263459473595206461438549716253839581620,16642615813361835581230500131246118445590603247887791817817316273244438476256311337001611675388574331977410141699297630317377151836311293305027088331310025109780248001730816502531361314291505497281231329646213545390817348454790771602982974763540004526670479533111992035177312072478629306988622806347623090425003234077873805375141062348645927401285345899503907001825760439541705306585854742931882134500925066002906885338189163552908934604616236359806104007315451823167682352183241953279551520079950202231330492255621315016646701261669501844925563045252616708085163536257987840050252877140816998011230187115088535718084,16010347999096675182232092054526583890655342476048555695134478148077646319292254202928857709848426726687922101503995183630866920756294444357812738165670087524526688577215556076807546011943089084967115014780281986236650136100212790809186133722139336439667178800133917927993914606420172087843235000579778849526996068548810587854703520128067422195406060143205277668392537421614569464766336104310955572146529110182880365088792241394086157577886083440548786679580400292545275535505024808973895871707731827445166453079771165377996477241584002682623055073167645192536278061988188027824852844065261608054572024963829903461213],"H2j":[3368171208877966911054339907901878144315427177489764716664525147952589494997571345476952466465636584372230416806643927079294770772639785886747559841089671070120102511739419185926825275343129268693107584218806327021288882477748577914215697371729166784288283440868236399459954587383445757960644874348547417850473459042890356424271874499317095341286743556259239705095932387025485711185437452734962326711790258196775033662070121656155183933539103178989257156247756946175745703344908852193344259286268186560067884170926994359970521939453852919421341990972981960061011629945378288288327928173529860414633963687461741921536,21571995110918784658914871089233085747498481392093921476006031602493786671249981878215451382962183306832489322303548281716296137774931836883062638257871799588636736223841397596603236825079859053119441636830060533162035824030490541191082185733831191460351456499274515867869223195196735738841516139421749973183291711819985317821732516820314960505801684638233368245136026792456696584282458766742520555425925807015416047178765452538113430822668214923191463369535833443605844329620997852520039896259519774630621573507729397714725431894641714478634392952187074508209560077240054333035743202911738795412331854359778973195140,14361846248841354239738429614485615020817620015740214377557182447187161532145777460980697522328331383902906916852306307688790083451608130261350491455026208295552005757157547049806867066926847972162187184750531821995727255016828133897770613409484181886065535775699953909464798003780913388918153183011660224430464726560354626850573087079518001579497098985920611294338802921392907919446517107741456227975646401634963060678572780580998274987217038988195161229432595476488751730989311796958677066257365863948226172977171594831544011639884849989931328654207271418544321580100757601201270000125579606365984683036050427736901,3320303882237934822574723730249906877625782534310160672723504685750059065549780868692191634937564489497907122877469551544554741543440051593275714064385262048169355745443620314041833050794531307335253819559894664711581948933864857312882072901440293913927021712377972600011615454373450050526995352982830050256391443830850515525775497974669346917338799122924286263331475349263163070978610950486766234107397409979634217974050928014066919223534136219934067215088896161064759214148618049130963680983012705398939807692207987093138939884157043400363128971664499276483693036909962979142844998423058170845192989653278227244556,11392712315645310673556256100365181042182208368042016535682634838624439633464280578340353342992697843456486856323709208993769929825667198124843256857854149171724638555790573818365215224736100981973384410995558183533272266822358013891089919574254939818330873527463833155579817319890250882056946018928950519405481352273564274138745239339555689528027209630484474043328702633331977168775903350557929023233359205813047128230741363083482041365845075249319178793999005856778680811779083784522911420519825713738930903604514930432327435755406403484491228343075922083298289929463367612180095879814334515830338256256962304365507,16128185768089596194287119128971616467728481679140585100708821051566471323843047828854183726318833284371487280925375797724567335316422823058316454263458054143106806709907496680547056853651764349462358556329487313360470751830659004515085115085503406434144518308588359624087795942838829972724870214686385899497790143468039433972576851570857473482249444251166188717970319339154993972583107254198134043017660882069243167380269891894037618164535745069845632928065376946760432598515015966819900477155552863106379035709861023910264232532374352692943776001019180723682584987138149276551856921296644229421379331608912433891787,2216711622729147643119351601279604576561222476671706440839914460051282496368367881534683081378746937805707571316950268212663028051018612966825594397873907399847514954700788018713085783872783310865267981225782070802491186153117333152717062661110252994273036185050571252614763467112197381544773361260703440205625252670499456016034457927577251901944688698835868136916669160283880144324751412122403729270589464975875662168775295336481672192780137765587777958466322897160031233145485380452023766308429956773283861365366429753738225270634870302712702783980696520536919562785018253963272279772947237341901826167911636277398,14567981249611770119460797088791616882610277285940857160650608249425344206528691122331543913667869847178068077135905754757970717904714688019328854767805335556395966314263235325078374161755665460346725642944725762703818596015903905714083108502634334495870792846224658572820537006327415243377500340330706127007814008821793048336577227035431648149947100606065474813247441707074217050761365292856644845629066245995828609114930249956124849463230151850823327413055370077318181578457937246716760725440912216906628033172873929155794447444347775998977195569636526530564164070920144286322379557192066768871877841501668738723305,11562467842115790891804601373773643847126621903349499609152938962148770984937205728801191644445725158989276699296504193090664088648177394705510081647868491010141118677836328015755807190340752111789458182176683494843129204876774659319228937425442946958815453444622877125277511242659189800732695804577042735408856749044867603169231506434230337165888447884043777386886336176295745762185799165141571995448994795987563473269027183930075484844146542824749783851152327060411300732221330038342605240436682988238960554043191119742665518743299119772957848539797927531910599793668616983919654530567233469044356313491217598173963,14001988942247671750781482079375285966547579414294794319094213847379686940578167330959958747320137628734714588973465688779508774703004652572462868416321674738451567199004872420641775754108356291951642382728451341563463073268234897512437292991864411475522021623042299363078178084134670414407763213420631947305174457007699331702204294303015464925310244650403343929391594959891748515738314022772251420423895070351394216428634037166244804545860754313566530581379130190514697248618490807663014153146208137639940027271688234812971813570187637013722635079779830294526604514749212529717398437104564243590356265592707324430248,22660381208680529934440965587759859630365737502029115748369924654698991903261875827625444059798716389150600717053198039271991446052177985348107490095372700835812383361394955848974961135498980301472468398590372824927166661721168913896457190085269560320077063240744390945543298734163933076390800852847268723891846915780866370885782050245477056357544654583119258014409021504561016925378839878361190561580782875056594285065583655990468688145199834395357403106937935824760810934700883413929457207664342072543405193505090717688282434192414638239406093224709925453132516053056802277292184257441746331824932943075086343111278,20472030140330590554727016751322746521411547021589348812503605132754052870300345339453032427074737788538570891246727822818774891000538284023878268779231690147875265496447517546051987993131805558030308294615301233476549529141133753715149811029684466002817709334036803452074715441881335148948617848448549417354051160238759910288354822541817903899839091496273435021826344319441409806973908079330351993159801831003550379943098083992503486981995525990398355622285332802868604496636639655839747683821735810491234886789689703654299736502370849656509374303361111199544583501333765966424789805698080099714702838932727164170265,2453173651401016059883376082702788558595819343620938909718003743834761063920578770151771007440124157356829685449240956671627119096461094862434828440771694576875873539491082895345114445338009283914246401641276451109273726841868022516636570181871922631150553766823691471767095455577358060583652290109547591748476465162423200240371828509110384977101559949176482932811774533277255627251591525680337416653414697852938946477765739575989782561041133771451257557157756072849234217247160968445068150218106127891386897699168070200218755068578136094949985380806928006246790329032200529105916916706533850553672076045608730359951,24113152339438360498818613385483602121911555739122745946787379178133957345957135620586264478203421944425299426192146461629084303328006516447630615633641891356240907180660156167532682435848933370915136668244592305335752238307655218128679169067763462102575980085156721937439825798887974559139719995948680828470417607776837167245694714142889348485597791698351034577938495332154328968099025912022930753095015877561713107591709857548795164690012791766454787725487399290632750389338230767552797412606609844617222343058516288469384643892784348204522341997782682670665258025662990169755315957866286658684293611644496873215267,23048127989879822710411192866890144848102725506107457207672066933390327615164057701868652098516421397166175276204189099923035751642625511125320886106285613893278788342927698548384268560900735111168363954600824026890037073968715675372129633119593307084369015870114545021114363768521678984746381386414166722200844864695581741219036038918650136132423598216731404838838590398569938445014697553573715959930243891120229359688175340044395042982004999256741864583061848148945179825358319553305735497035945950407010348447423433336328707080153581767979294379351950056937128181379551873194994067035954630194182060875682649437666,13618893464695086149676203128264379703835247962620883770951238013108147463339903484787069986025297587613907750851693587285998342458273645890621629308654871877706080796956646324471034007240766614380367007821000885398439611969420081154359024999574164769946112634981576459912811818772491470799900760145047753530968995478407930477477944129573287306569838212654312701822189291272987922653156057983889008935259264244527455188704827518079129994488508788103513618119832400499449348458232904888661877972105894911067928574676593878643851258312142433749927142945806711403413926146774157545099025460329680057003565864119710344042,23894029291617241391144328899509691451082120805949912944383938437120322549284785238294999166576087704069349411280857670919349460489513399500828536265895125463653495907166485758411354581066514943080277665731467417672021474933030712874768858153808012182457456133833868682464778542510979705494991241834256525297885337509013426009068419788422403698033836643374538850826433098217327104341285009528115639746062522009884356634868057714134080806096522631119686584895158882950387390079669636785522392222833493980203199840117132536258676406629318977553433626720193118379634005263005358473104730141003648560474105109737111011794,8925336938516965008397109104514048184046286665452569746388287155124102463448431342748346308295582163969585477123381674515410213967775651281608577967919981280923720344420733336038269189964575637162708585549385406099462739524026684819607311522399446887121322482655436562521377082292558533779186792041587188361186852658931953312216304602575717772394803653647861926317392730789837892117863267885605817028617970756887793540591824273228108598874261690153175536884068161483807477696239392976829822163308261960542651335245650622440817598987961098884462409657203750437907285145610244236094931259734945402603438305753971150592,11949666259971918796589430623190075546810486453882961593114781232790528357171489136086300172564872735213582648459678932324553671446193373613445392996846768949427585353892225809922873734606473958012848905522095066153323414491640379067553063059327565094898320425802881846169782611727703042073646692303198048486923691657532734229486488161759607766287874080676488615866925028524263799527274261471472615111756048644281578781133899646868101860588922113737985515123939591333283772116702698675273675787772365936701715064375893211337204849804346824788133348904362412793959284749560448461044309070434592388006426231060171764771,22250566339370324059402215781976249391077086920660167269541657986285216346026428267640441435642495757683689137264020871118649281135403445710476580606390835296225377720486579495200200373576733192798872047011357659910138900430140520045889539388154712432007987497852789128001047310532391671755193946030519165629053752937739899959567496721448943588557458516035029605073085115080892712303741049416122614132971525567297514147438256957998569093867126816514230762539072531021367441808139154778858187018499802649090111006001230394761758788797026721593274233504527845651968558769656875733771044784061166465882679811351871629592],"BigXj":[{"Coords":[107932666477475802631511202367582748861519739569035537904969017494701526323818,27810089900979531039053592509940878404833992140356119628629019981009106058899]},{"Coords":[70488850009775279003934303461546816167586319901288720095232797816893086714940,21365158033407193885213404713050228625397820553043856269267720323259910113340]},{"Coords":[96704419145309517259142970140495022508494287400107594467439362232020961329299,76628584944766298203991062873793502752240767184659143342509677627090500089962]},{"Coords":[28019161860991754547254544009397503028608838172584402384170752184470432984674,108882834276696603625351040619123218095898824500661874818668494090573839581587]},{"Coords":[69854419615803608419512220164651266075688659942948825382651503385261699188382,86209865999364219341605400066204025416938700532196803014526015416182305901566]},{"Coords":[55707469940275855599640808250448173151230633312005616373715718152006593734016,71581471827456608524472614862044126332419275513283203837579704443605501341979]},{"Coords":[31537542564214197931115404850756486671358385103785295421162883744455005249506,31003647934233069190792056145926504346119044635106496026002117518163562078840]},{"Coords":[71459743938853567115182393388387842195822211722537627655935266215390092032802,105621264392663357649957909617094860377111556629887291515711877643951632476111]},{"Coords":[100170179262204638729042299933877814060918019584852761639094198183345507736585,28900877763089774489040863107152228045173480683157331262486804734772631569442]},{"Coords":[3393930126761759176345687233491451168543634500428196687848693751772795262696,55773871461934232294712308387072487465508923595028614508001564000526922809830]},{"Coords":[35436174997161384450863357581481493940397620545951968086180770941965008242533,22941476771782647278770334144010957938195504420883358055133977993491797250976]},{"Coords":[20742591764203230819083960194719627433799141307841650214987882235851644570480,36792680781195360005281832466704518433303594582044389944698351592636972852101]},{"Coords":[78822613167932563650341174247543824338627391764838115664582901884987316485415,29305611808246076472515388603014476455888609363718621630903671994111327870746]},{"Coords":[106662917025753316359017201639970683777210765763056751174154469380644107823988,38376047705320523688829546978146661452201839032747402442602961204420046730181]},{"Coords":[50131378328647772110850225682895027165473791107252577081428683178756073747030,6484525664721285218064077598136507537588284647694850022336064622644441747313]},{"Coords":[63814576207919556970263190432671978386229401573575575774195362165468317841987,52351921007743438678847732376277019290979039258214198300788054101141627584484]},{"Coords":[33074537919982031116943260590723731125144796968052633499149040111855190089892,52462876494517613825042650703891412581466209764861573326649361336309483684004]},{"Coords":[46337244846970653814521818706394664913446423803670640514811670889644615970917,60622380590936530234720907025041106487069869976400399621024354043945489694205]},{"Coords":[68932201886808999446322681662607675293176822755681592496851252047161893154617,102558540543641758967834783938704783088913683989892796677072783324191846467831]},{"Coords":[47093684301174743530406169926797075725911173707597448168332637736184121729220,74517549523358620639964596401882412428175945976473031695393603496712918162101]}],"PaillierPKs":[{"N":22709559588116531632086995360614881758145847958604375585917706994116168375700793376291131544827864145364687259129107134734036373558516565338923959924703156876435469021413354399418993619174071015237246272863140297401272631661028437511282301913323857011886496541494453371682094558243513835287198378640755589750985308457641295136946180231598093936765306071278862423297167033582450972276390473663053961764398615170355333807856718875047329620163477731845253445115727590642190491372191245975524943279344261890117425706855830582201691939059698357650223528988243289388677629074389631868130733940366531485671699566601163615661},{"N":23443957150234287781524191819714980056334495753799141564738532515877512840928595615570444488815473106829833471979932833846134743028112638013245259429585839683894162551870479232892081727695293106142145837752188330564435054323350976552725925455074206192778580457152750035194725712966851385101176362564718763658489874740341398176203077931510475924742361380746164713522692182335455005818339528332609035897638651762193188267900136476551393608916669622907100712471489443414455950510417300576764177277906265582678299980344888299166427651633758323734973558749488731824311505669417847053850760848940423643750519510719400853833},{"N":22287028689259504755807149120904050002396020193634043129060485604472139332057712093383073269246020913354970143960065213561811698182428208504100112877284663913440710058603853492628849020664094889598583038642474751945815658301741607940280803922553940685657785019086609257141579057485855668397778602262577280637009340765489166395694519909332104264865369924039797553524566502151933416185073911748303993059047774791584591703105106437459703251723998725467328206119091524784524659754164199098692948259716816125731645175450298738430174307931086107554346505367596601043514472572775722114263120820933996056766066990263737006037},{"N":21778455942403717802437188616130445569467912356333711523204106321468333958250985526522676150458521139952234508699903096368286173136552336834061186195705878795885628080532376972447127537374960052755412900354192740274699607194495256559382391407619506149746521336051948176770581697936379025338953179299724284866217851767053361169462746892201032000776732741861429352495405542992367041691709412944529198233031428083828538853890568987466209820731450551650370292813109604532198408719181905952928419308306626664706489746484860069309396704199131581338218405332252354539932883923534658047809067343949198229794022084007329008301},{"N":29488834801717020514549557511738862835006604218586783270956635930974777840977382736818004943434492491272083417763033198615963445455042431681833978353867438176815774128330303688651059852719975859250721567522453513175104614385098138081209372251486732213899964978141377939387124226524201851559541320231331748973500724292675746395999336271645347092285737228923411234511145980962423027637945866866145915490526131803713409632083226573065035861386075817821231913413262072294132940186959486615122177174171466978866072639941945123654758187894442697758141328636666389957637295324259708835849664958476600091423260629670847006421},{"N":25268781854018641821625117526035412649921406362359871346957405856614663043063881662682001256500050697385215601589085313282671061645985003913281457834036290368462929918763869754871955608135979298238482437377851913552755913815405018774915484866488142406303297444296659799278477225336231564636195441498040062964451813900346208766721654100661710718867197194733579941984196715209521167970358227552984230489600141394198144474928084583860744656840175887777161454380202188440178263993042579519816969496156562013371732648143667185817225623397113488180419930136011024805515953457443050643425221010148081098971618629282508806153},{"N":24077030535873838147372990238338423111894661719881851208383511932936303788667059523325649062922462968249640702042151293306587810036594125879862518141403476609262478705296844024060273562609291573351215091787555942245982552314643486135981274381916357213038852978171063476276539384812002232533351978097782562939609101707149234139391638125337919614533689982228496010017193463462456934753130533077727108799001253943486336718218272844533405886783727956436625979626270665501149887064412642510585330023269746464208739229956710668053204092869919317416558618819105166451453240320574158658174090376334547079951345889147202424197},{"N":24121210025310295136286367465067731861316363403302816495348899075683542883649267862423504534408270521528934904000166037695519824119622953526124849500602533136680339478221010232315859804261374907195769559713293619918530079931895046819311703445607618111244570268187554380693098539122537784889700313005700764528116670706472264450599583329582635827622249925780628859318211609939169828662135675938640346560681426019582628979275573701346775265344080547061237809761964885298244705276139799178175782218409921284339726928435810584460742981474010807766522632224843035722465220411812727073796692626221078545796203402892726398073},{"N":26956782591324520026471701264974010002551430844929064558517606333109244333104364565707985261498791802440691867651722784210280888161145432103606824079477489895607158911928686613189674072708812330140444741131333062722881890279580684791181148664415766399323289281546841599984936640417820094077391333063403828290767644884268872176714175866593843027335088472731880830448148161449695591865312724115778446298294191846018327598860718546463796845910458753293225328770367785304521228332493000905274903063796918859478998380272311510096333363160486944174426731511854410356169028732110892177884127982236790065871058497952170624401},{"N":26249557760815986852034237905417683014048371748204856284575862917968310785883486514046189771449794410062311941320778404041317694258818896788913080156960590072834802977027251267292982532721343074208805165986815554608059680417209847673748867108719737464989377176319950884300513507127044766841349776517208994115342645229445634306184178062065483947743824551463650982111893910449653832587022792656303977671598375329018430362166017195461057586254287305421091325058340750141735758488815547176349755224428765382123772435956499576803085012124378000542928725389368171404677133866847871236251441021957443853014282022367009685861},{"N":29234737641692976595774236923019314216135921756073342884203680618120226690739166288052322806435356115092650761656136403373733697692050475566331202817414926309882834844059857181882811689758047525443057988160495074334079542319370840285641441603178202467820462588826229922786870937847036888109767951604636584098102615282750014508387427358079100450062680715472456836097388046216848854107984658532128468648705497171277133763535425127577293318939184956565230142817502839346792604559307183239212332206857888330805061669830296766718735240517983609617995793272006065303892130080909658027060291496416496673503247698087863812741},{"N":23656386949781378983561509210223997485938600678969404520355733863050336777307520388106184053630795530040934267843013912848246799628076757878172461266778291537251825140340096706161543161977283845709058224884977213986434571463756330276479208682952096086332163009127424608568458165322976353036562065434426650045708578336603634894217912009997772105108262453019882143577371634194078714264992380438885990335741008955488808069468796086801023973076920357953123958081822096146124559004458043648352764252390085772923647155984579633692639191141425745475545839873632550694666801559519849238477058285069280151324843991596401646381},{"N":23799985430892428550287426639163393896421663100337917557737015159273107046495772196531619480943457572757018895004491581880198797117841320493538657520011738472038586707181276745476787089472101888983238214242261897466709975139313526918983914349699164310009561585851364405464439780111046692215844366708075439030620693316351016954915727063684631173044817825576871464988585229583331260702104268887569088888141481975510438061934915565917441018736997897082388887244599485050548831301667982348795441755679549415459512278548728977097478254566801983960996625453970296380670902503277224729081061542066926552900097298958795919921},{"N":23398981485141581657111580810187356464859260220476400872431878471724619284703169207796437272649895475435460945312990810473873577007856956495840504596329080928974891464665270653430872926713471055976901497303072174459471872022720981442223753911960555794844008812776454183058593769792366230853507105586338576934054995838272457499054915439455088496111012971850904735289245691042597216634196809202787360353382667100073960437339209464655220130141692780283364216457426778903461083049390591667885095066567970867147659207581183606534554025283663685502553767113396678790806758816850832944906936477595076662914396730813902861273},{"N":24645804484208008107774215519843481629641338685651268289287772114412526440944111199969614165736177320304962312701073205538949325003439610780511806547845684862319242490345551374064725883323450769869814834613757570218276860284970150303912936880248283750218053176729988470901025014948637258535944241625099061769802348376561541469733700398108049774899180411488580995483844861534070436865153589414051441506488195269353530135159150725450897767102214976100194473384482425657735122085724544900424323758582364844065404991831422328546732900258700279735848044809564185617079126240413557300335393565946088211107690073344594774029},{"N":23664465666512928010084076006211208070039097235865486451752383277009646489200010451773766854885315852604650109050180997494686499532996982524560956955784208153283884502900612829692080614937231941501430129101050170848135543483642879522140453631883679490750446245717832265221232589489474380464199065201167874127465810334527670252907568617820949350516778153996202871756067806159248004814563340677682071536108582393686279672503548392243690499337315202892692273695083478754736347613219568092769421161385508903701795824994052294039246344316342377047969959511601521901736714883097032290625287691937066549723767146291790114657},{"N":22165609813091667259068375406991183583538522584875908765309739098448534648989953434651686788146626220283972510122914357995219529654582068510398362007031593307847827533082059785375352080923687640731375327188268078188971415753864060723639564145551626769223269559344648109409611860616931934210627553354435590764505138165455042290624193631088250055962033560484870481238850988856340320616852463026890656813658017413542014132396994215496811530247375977104307808133564653689276479112825279061966541271092780066027501498091088819663615972345385914896991989394778860649710938578818683661928070093400675043514978345177529652389},{"N":24352137164919775060505902875895344669551891343219870713119659495462675754712808458066602996522267529841963340495194383402601416044030073771848283771276922546693343786778909195920195728052430645791682092298169597213540403251589258864324656830830912032021695409682689693414793104678019843226941004344886835923010707685858497420014814885662783481710790760565625597934856999445792014460533464855807508832344902590088930105318969772303090927340774137226985715726042801943592444113021856673268564036683304420372700405680896320106848396385562893886698977710031223312091933030330629827691164100994176634674536649129152931477},{"N":24388425323514301995345880181969195093222141730097776998750148283180811486102209130079655780738706237274584643472954914248041737365215477795339570700387683883122567928523036945799350046333477704674538444513982433086664207664876244841911099162128315338715496189423824903190803189243082722638413039421880070666657272413079871744422617706188003161639646693501252928939859937588136677607569634910081471599993513483449765647227570734163189729311880395414909879933139619835138785852476313690881562300854512419432999005203281002911021482679309149225773391703345476483158302622073477221903694296256566718995262186459619480089},{"N":21604728584405813409256303272593334134333518895675489098410576803850613670962405878762275711641486977471395420657043551402890823783906820971712770494973201278527635005537714974340519544361402189093858595896231890523544098157276831993549216761475195055251372273062282101577640320665049775934814411518181030603401788639796770568692007642464803606076672769360069701571162199680486773757848273630254180550410784187377722267755203781450486589090106764541644204842436002216866597611146281471192249537747681020939314396157603364418120170135828923470079746789793341042476885118587449440114091973976013051496269141578521399429}],"ECDSAPub":{"Coords":[82191134404558877049244897640959846424169542769967270904890689024123037541855,102677683688073592669768840687667774566029618427936181452214529135934890152533]}} \ No newline at end of file diff --git a/test/_fixtures/keygen_data_9.json b/test/_fixtures/keygen_data_9.json deleted file mode 100644 index 20316808..00000000 --- a/test/_fixtures/keygen_data_9.json +++ /dev/null @@ -1 +0,0 @@ -{"PaillierSK":{"N":26249557760815986852034237905417683014048371748204856284575862917968310785883486514046189771449794410062311941320778404041317694258818896788913080156960590072834802977027251267292982532721343074208805165986815554608059680417209847673748867108719737464989377176319950884300513507127044766841349776517208994115342645229445634306184178062065483947743824551463650982111893910449653832587022792656303977671598375329018430362166017195461057586254287305421091325058340750141735758488815547176349755224428765382123772435956499576803085012124378000542928725389368171404677133866847871236251441021957443853014282022367009685861,"LambdaN":13124778880407993426017118952708841507024185874102428142287931458984155392941743257023094885724897205031155970660389202020658847129409448394456540078480295036417401488513625633646491266360671537104402582993407777304029840208604923836874433554359868732494688588159975442150256753563522383420674888258604497057508674947275846509651002809441508485282056526776189758938131225260934684046364925884912666800578643351443382564126673711864678070335694474185673032328035027185638063408758042262894087083999509897119885748560420323422543286268219836857872697927432524389216525730564656441811606487479821278865995100818931898726,"PhiN":26249557760815986852034237905417683014048371748204856284575862917968310785883486514046189771449794410062311941320778404041317694258818896788913080156960590072834802977027251267292982532721343074208805165986815554608059680417209847673748867108719737464989377176319950884300513507127044766841349776517208994115017349894551693019302005618883016970564113053552379517876262450521869368092729851769825333601157286702886765128253347423729356140671388948371346064656070054371276126817516084525788174167999019794239771497120840646845086572536439673715745395854865048778433051461129312883623212974959642557731990201637863797452},"NTildei":26883601429347938201866566412436359463282736845136879263977010812101340295160083165177085686402734295128738223195845941394861534416081222492334460738589328436684156816061652087254848610272225814333318089300032442695939753398569200283276971829978683842747584203047240258517693679059389343721225356421724973291878661622168915849085533925700422984364421907650824486413330797840743205222070155228532990351439410717713883609930796830287062705670943579996135308824473851899048361474382520461452309816639861239026761274994745411785747289015653392872405877863169928875880404134872170564729075194783267248873823339090853461089,"H1i":24379152218258906482492311550879222904032299657142525355457269472724266562417862087603238266608926068245433152992105088073531452805187189356790567435332219230651301413762858849116755355885877930185483851669316692179467165059725168458003778120562044911094551614016767541895327106348965256725682881898632251239010971342586248735804355885933092854432575702106523584026168029150861398417670162335859972289331761535391135324650197244391340985538289280848512779115086784546807731473605687728417756436783747883720385660475468617431753857425268742613699673867257484976547014884809737803594445736805689004998882232608324939099,"H2i":14001988942247671750781482079375285966547579414294794319094213847379686940578167330959958747320137628734714588973465688779508774703004652572462868416321674738451567199004872420641775754108356291951642382728451341563463073268234897512437292991864411475522021623042299363078178084134670414407763213420631947305174457007699331702204294303015464925310244650403343929391594959891748515738314022772251420423895070351394216428634037166244804545860754313566530581379130190514697248618490807663014153146208137639940027271688234812971813570187637013722635079779830294526604514749212529717398437104564243590356265592707324430248,"Alpha":3568255240307485123380443838584844965376224759126620990399171545752946816241367006594243509498883341046742554094682679788801640955441758780499468164853574525301846824372295745510001550720956048577653923210733216107790653053007197251119344201415454189514473628108314530619241092864040638544629952081075649454629518982422536268345381743851366679735616985105734174306301473134871481529581270003606005959186722691530076943487898752788702134248440514962616631757262923027179677566708366021918520769620203011385065826256091327782378133960820708918605762195855279913168470993985410842634166628179969130626795127159176624104,"Beta":2242254963624076498048569160588558840406077851187882568779309547451733383609909769065182373029799262239500205375891685125830495781552576943912368288796126627520275561437964219885311618273338442174500410300080390094881752732597855579632909934971362798816639587727300252823983871721937697173077344593521919952903976956608919693342493158141449829504589517032025549272168418869450879670856002925555541702525529754516969145290660372988856045883126496728122963753611594686669946383615990823876524144978703625799531149651299216540229294053287787147728326948163244909678553595671712110636762214505406225463271583121313777145,"P":83984019190845112773323480230762754671162831018544175395324562504926021376270093491678147725565112985559584717456334813947868270799498715965139575080411288891912170545038672206224685562871519033407081090713234312841446067334350814911254549283634222285976243896162725390638970195280058572413589546867977851481,"Q":80025943293621425497675585063779186450229935295637483789829231807361091179787627865834895147059051553516456279789985446582190999047286489372342151179515600824259742399845949779481825053570612329264783935383420249418193281668041394335967505800379807218370061630606705816941828547645292298537886681836609754701,"Xi":79695852527502243951009872139067279131184552025075256380686673426187876067769,"ShareID":70024534756929667616115849317753032895580033020239899587896153938577578972758,"Ks":[70024534756929667616115849317753032895580033020239899587896153938577578972749,70024534756929667616115849317753032895580033020239899587896153938577578972750,70024534756929667616115849317753032895580033020239899587896153938577578972751,70024534756929667616115849317753032895580033020239899587896153938577578972752,70024534756929667616115849317753032895580033020239899587896153938577578972753,70024534756929667616115849317753032895580033020239899587896153938577578972754,70024534756929667616115849317753032895580033020239899587896153938577578972755,70024534756929667616115849317753032895580033020239899587896153938577578972756,70024534756929667616115849317753032895580033020239899587896153938577578972757,70024534756929667616115849317753032895580033020239899587896153938577578972758,70024534756929667616115849317753032895580033020239899587896153938577578972759,70024534756929667616115849317753032895580033020239899587896153938577578972760,70024534756929667616115849317753032895580033020239899587896153938577578972761,70024534756929667616115849317753032895580033020239899587896153938577578972762,70024534756929667616115849317753032895580033020239899587896153938577578972763,70024534756929667616115849317753032895580033020239899587896153938577578972764,70024534756929667616115849317753032895580033020239899587896153938577578972765,70024534756929667616115849317753032895580033020239899587896153938577578972766,70024534756929667616115849317753032895580033020239899587896153938577578972767,70024534756929667616115849317753032895580033020239899587896153938577578972768],"NTildej":[24366917239515824974480442558600034492208859976504581465004349103795399783288421050831073024860369440303795551299953821996018530997630686285237603133194573622718124597460737572013930327249120648302190449742363261573076443183981343509885970573178298207488759436277685910850783372123719807298277837194569211839837465137044422691734879346883675317045008891659749391963717253895556693016508386391015178130161988317310806894350108084212611277788190739249760699147435109968242744158314817905689533615803297627887736048945645075792686416602832677541152918424023805280241226851534199867283487943291927564365275467582581271053,24760645214372673899925400730945520473062951341429554908754617530444794660401836428698520741646966955149111758288194803110363170964340801072472223878272430220722034553855593944561986134993071918255771235073978495918874383067260043443905506152815841034811512510858407909698555608803009379935760654878372301870950275270724586431009354962811874333750886958869738872804882633350285507993032763679234057221556156642769183354423672540429587887851343483914923600996425040023829456198369968692844034517720322057627565080062766276792221145223750390964637842847390939964073972850018793739320669513533403812272268817559996728177,24335507174653830446370401218472354012341984065893977351232759664219171991998539382418393419142907217562914494098827810315198583692551476438232634594991137003295122745831430159532586451010818106345725278793436836406022036374386618877645773128457664942790386603953998246404350465143928182109615440037926218085391564421745517307996722808502413850991173460229650178023548969664557299385141472097112836353938598657235574893430259143862369227601052831476146199261368117297723539373329843815951236997008000605506966102265798289158763516254914284024816124992986001907541315389832578466014006010753144367487203071067653140017,25353120959776139123294155818546513426444543204238814947681743626639583989194265533184090862296087842527526282860965927846515276605818147773016966742984780344247645856238734726222917730082852005118152200740071409410429096265046046476115230269737050878141459099734884888260830179970728221214610731604157017545322535971152193773221758709395769765431078738204491094323008301356895841037132747444047830530409305765562694358003007195242702308043142399969256485870876259711230128209178441443167004632638027691911658424285106297785382963002590496015895572427776988235599297735903480964253948429971597628412447354914215359401,29849885402332341621158797110436829396646924395042456662853244309209629024048299162272105169817115314715561658954210859089958590864101117136365470947498907594068557026997249170993874294161892140147876022164668279854630146959174794473879294364568105935870579392660025720467645329300426773479121856766502569984218591054914763859996476236063750210092775547343099066989888106146219058807079888624162205626100491953381078296178689026680702514982189001052448223393538379392778307314168895065497502603308074595916000270844935723623383768691838356870704054233137068509668072099435779943491520206735659166266930856700483211181,24303346306264095483727907643814355785838936488512300414348142784703917728792656928355740144163123550572150171398192480623395181408570425672723511597546032812698562984141032629389936754449924613948711482870260420456913877526422469201798411517711928654451945040790337077196569240216228957228264615761147375423719114756511538399142649755527243797217920772594702713281103939163745422429156605226253637010451757984598979666631182977221341184990723224510127460146263007980086670575857365789365543477249518437176817144448210584125518855115672157465775432933601089465408090382773104140011964681476656187299047937685144419517,22663176204438991528847068755997123453980704364589354833944958947785385672266299429364336994892902925142195136026995771544990684289261678272550855925683439714148609523477977179010696117909805695701859018966669150739407573082987363056991238107146673103957237104655136409343763639221993038484198677605284199701204669351878989982962102150055730219424526668206392140254467740757469800556697236694088468633665970603098311956910105499246381935436511205439918717236853087415401432056630404175846159692661637004967185601880460514710913037913825633119857629058574151126418040291146967097319384900092639447317903904481362864461,22214406206988221120543596573138808869312423548073528052574227838235500966558488375856182495656208729058219131190228351185002058116343873479198633895772314072671413818939926736318457089940649635331152484030046857163634723835906012553106874988855844579826872824922610248380139635284283310239564378546105159549071234915504686574306652852285495484227675227079507874801353534124836509674143920296971261218965184384289987323806590503991373066703353411925035343072343417173322682200148341574699074894310006001608609036165489022667366737175975429277190015768847957906950063130121905159960720849686267420829596753652148430921,26992054981062895613627607261766199835432715284801801749398907129229048796737348701447929605174559094984645968238323112325575430714478210726667128296579144479334211667227791506349731191531989884599385537951555136889431648507040431760656554949203843341649040209953028348323032563665739842658324687215759862340780391326904566525914822596715715051383829453805370490781186878600411802395931887164480044180689343432959074712196207660797594065685195126347713904229309636698471250350144098081500570797555478540127343168177689831999672573508345263924360426808488416307292793876390765153143370885661040432948994217496537757037,26883601429347938201866566412436359463282736845136879263977010812101340295160083165177085686402734295128738223195845941394861534416081222492334460738589328436684156816061652087254848610272225814333318089300032442695939753398569200283276971829978683842747584203047240258517693679059389343721225356421724973291878661622168915849085533925700422984364421907650824486413330797840743205222070155228532990351439410717713883609930796830287062705670943579996135308824473851899048361474382520461452309816639861239026761274994745411785747289015653392872405877863169928875880404134872170564729075194783267248873823339090853461089,26675898204441883357756938810501612911006923314113656530850642169244358619346060171584915468088311545710004060513299980257359925141562861692364285790755062927815783069742814310907363159744172010043214941961935176791603921250085454102936917126214113873120405883118273636844903335000473865105148550590214462929117780405311499444885924770449779157142014006830224170685309315154438797997384633339817640551850145502452900467824909085498261391267709054450200313476628713250795473832792093350711410373115197160491274663551092524073340836221397352664353235247831158949819050115215290772010284539607969271690219902603821582657,24003425727589170532663869192322030538943945148822062399216337010945961427378027710524236529045097740008239529891693854573603730323074574387306355517555029571396270483790272731994105657673718134894396083438028861748333502807033025075738141563799251049728691667635160338770958887288469952328987442729682278796947289053518986771911122562542149441355230810099948748099507142060010177281487688268845292432759376770532767245812643377347484905682286529844081415426101824234408564247618590677966518836555327692461478356122297916534505785216531638872958168430321684571355170353352724268927780693184938724886624339722183259421,20030939948791694094921106997836532434578994294403521371501479100010836848962747077471607238761388497679145378822499150459403963802326636975589780084279335637070321781313502047027883154267014733038805978970710176410579107929485519779112034850622531520287022547371539439386174878773544830750041302618611105173361798826270784808992652396596786821436733488377837349284332001375201088424331364286550732742247150161681889289004480841207149941594126907534285607712061943572341899739867922754683103581617612214747009636033814762750497302268078808823665919929249386647148964298452596399586628310864464196272071720395192133489,26870132374951553243581913321377246229771795848056596419360924847337540300978229013002723427615100062690126686631934134732102152941473371391783556453709425066357685692036492637888980565254013131275256724381428020710512422112788440607830591932440438849890272166273212125255293837259298348084558313308788645038416611482549103781514142985867750527012906984385110191046837459757808864741583473057341019452578423080700589131792924736182910584032669431737863108910781465411300404077532371983623221078943741087750842713540302692591604785862604978245628364756611702919842339423052849035969584933072813435912401288087398604921,25781309885353513172762417920559862373653633766198016154431702305819993747433843312735651525316421555779956949217599915608247344211910767561492880228357017663462131839160610108626231391786518524635537763772771732022138542377442385539024671393136972077400774477946909998449518641822004119697621239956294809097040644518494643152713366295240127317300380586618659118989790014789381034410565903140125870883802621234783419468923863900036725871332435066935174631607488613764393382263135690909855298574769132391272005233712859895795189174927584736869111985784832037628893972777670733794612566699959726190117505644366934694141,31307948529511772422092081620376528723351660195178245630091738647550584183808045529448767036136429258045017880313805169530174754560039519751935200016137594525166410173049351154227454247975670642857061354284229524586536451868860885813714578893448403685065908393856455188372709054731049692863370865677701391460552630927498629863324809550335559817235997586126538332699529118621351625401581293898546298753212618743290610874832103267345624474884402930254336353399762494911879332332316505133643206864735435683656288655072941785814640312959405902536938955107787448304325831133755028455554235924936888965889253927315459519249,31466961232199038206393986199348595708256863299176374148227521484010795684260339468184532260347996789772040097386032241172658309499404470468218492541809815234208995118730337303514831281668817831605535229415260143432704661750281094187807328676322407373913844432440683972812394664524853699586055958635280164067281091412249301309251915772998531080870705450343112678791059297982033179252277552572737658097615320288170699408198262523087724946180097295208523307748556241283633289461565623961341136472687878275672606572269060361808996126027608464429012339688636176786148346418213288770613540923635302757146988963110333316781,23282315206683722596094270562333648753439051790898100314922005841725502497093211800334393760989042727597691714582193235713639238284172358062468387217727181092939568556559834956352385929118617242221861532950969685568622107078283773942779583910577282365015752267710687089071780861330758005577221151609134583129504364837341221471368611555190375227501319216183854908348755278500330379812379883892909358375120467449644585220805660246421673078936109889143381498767668445860590513918867961598096050612727306953235332046855083649560662539716078578551485777683734466740521988744140757231408246451261769915726695959921765032997,25091337650425677853684475917739333556784369056148930585749057080859640921803414967035499248336819782755466354804640016025044002503128223804670636762370700960312352761126598625504662989187540799606658080278007629478214427447535566556662347722562243890754037326739900472696108231869156013516647618154210840364364919089100138905499001603568088340085110153219085814807927945152975657929969505495173887189020701090313994816079981109190512102678874334588894915787220152560380696231794377692004958328931143825599595181025003997691503128188855105160353707735893011124272774335559316106266020514461879401833904958202494061001,23827659784682250604442454473547796888740733968924087692522596947210995569582513002946432005898923676155984614087332560259943866897650716815951119740918614656692843602108809220144973266843900928325168304104193270024169252614460073574472494366384192690720704949267653372513388389564250659367518167586555169618994627094576635848093242114762843534765611200879960614166650643590955853799316870443339993391685970472310294098785089036360647811365521892090305001153074254408707786436158648387047030717269669710808288303673434511182840032065481730245714970751088620360458026112893074508503440200554493648329036195258926190733],"H1j":[10024025457847388392610646066298514243370787348338532750631360639913721829629888261433439914402718667116400994500512300775136069581637894623537510481269716297031115527602912311323880048384727148486222115704187210174101029381357780998875764924841198846224052749406474209451141960414618133437662859572202780961023516801781475926753784006105642819239485607653090319392184244933555747381471676665633830261574288841173438644814600240117247473386184548108338325639763390271130259071021112922069642676901166841167199223435257080313456925802886649375691201308332777566495693037805296244451983094124223174758130752134991251259,5540062908155010932513159905564312164946355979316528931149460136278288806659772940588319017326328094974853633874382463976169195549392127817304835111543615409573476314059060881338397061412436243810139473181382772109210271463439624149555390649740374635589527762045108740275882849527695527198385706268316952416235237543464363519203592980469637771074904708426157233888490918907104014536294284692202685017252106362206847500376336741712522098586355602155374318553270307953934712780754034315941245597336144803859821983984428471938659224631751193248483706020880124594451403191977963618445462632103562894369717754678411970157,7294264017980791887588541945948527964732046841763268733085682296431903566128312881527716171471646888128877802321111011007465120561544014131687975703500639986893207003039277321438260744935109724584373350656877837682253991859961109267518971621013884413991023503512551591742311046398421527897782104779903020623974791981836764750802585775470044046719785755322826006147242995196401054126149520747563133877218253475355114168420889541015916952420416242677374123641966631897855997275959219115766326404348502491490713975699304986526310844436386187304302850704361098476666746013218735172029033252239873173053183420490728457969,9501218113444747046512167891740890620022448184208745016727575118910400114702536042272711158066289559244823855716406559728787015762712355980741317225927051706399078523944764818407725281098361563758658548109686452917704268397282493394145905917631338144130662786869889947744035847462163212831976185178442327943506290185820473986106267053867388409405767987475830498385924106417897644176202343305711004215516685101951487059182051580662118563531777396290757514364141633090265347173402382594862836539162320425532069699769291364183133350523773491418365804493761877536170212947415911627316964969637971056063543234131063060179,15798786414829945409990379475347092437191933825852017565866427461531342919124334651290935627606571949258216191049074056902849155877229528326934734579833314251986756112086465450838437292200045064209850028597082873902388658379469441564667669701765841537160309665720024332706155566138689213961078587239980763899119769146527020365437175547591597253422987241897416697834718145603044863506510817025716990741255205962477142190641478116356939618991137525950385435749637759382858607750867147376236491183474725313362128439752969796168290272602393139910089130691220986679844969299810559606706770072567820176650336982258175656069,9335293725151276608993402038690349490322365392613976918346481216796454921531989892317554215286413208524498017721329770260220214739976276463115767516661469141467987234112799014449837377419827917305931640946522287484467505347102693011074644574833321939291182991369361351550845549986196632347752029739003400876962371840702829213086378506709453044627207644282674209652698873675164479665879605315024759424379670463637654094152277916485019222649587458037242630015801094579916767996040360006216068355347853880839844214694922100092515535187976540400673364286904799817798092386690711558542096052961324458158162316849747049802,11928753658530568234030789407795275088740952723187227006977773559909074576164921817701724786519460916583196165018163510774039491890001017299531322520325627826211812869166690445989428530376091680807701566180854522056382923625327483414081231404244458202347765643506681512770879868073522880161513490523543914681148241833246281106290736532685240004675518845019764469048182810211653160870255293592651339935498048137995182398802459841631852186888112285076188858851763824315081771524248572039785549974159773606819792419731561145595921289694471859455550756883293661073453125644271107011011223441502328961618975292599286540534,3281434421303304451534752490245528887879239197847942017450979313729063086003376295872507109217827492860554007309921835555072782997029442232019030164252143769859146809734506916627953872016140383116721175515392391691229687480990552997729334078523811275423771755788388400181281035140972235710503768780977567025805917901565574387698038208089499892809008311004708551092635216129712077377038639345772519472468677180077197280667928734700336917165150723117546746441573171713790905181182966896063824517476166929486302044010896828146903022644169171194514314475627079949830761751962833520028060036397259454122764395181619471620,26798335028033483015595995885818313899416775173626251303214746152969095667991567148306665607431284548931904800914249634868412622200397325111043206330920355980127737464934048444736064518743501106031852408038680600709174828761299003903687195970226223339349891916494477088540593890862438659139800883091968208023580402075789145180476758769233643214633776274238005081673345069570155874633220460290011162900873068065044353387042255376321331197145839355270876626896209116281706932058419419985043694684968787877580180579063249938562059688827441196772120556845945709093021801017783532024267437712559776698525435075445312453530,24379152218258906482492311550879222904032299657142525355457269472724266562417862087603238266608926068245433152992105088073531452805187189356790567435332219230651301413762858849116755355885877930185483851669316692179467165059725168458003778120562044911094551614016767541895327106348965256725682881898632251239010971342586248735804355885933092854432575702106523584026168029150861398417670162335859972289331761535391135324650197244391340985538289280848512779115086784546807731473605687728417756436783747883720385660475468617431753857425268742613699673867257484976547014884809737803594445736805689004998882232608324939099,13639308363088689304499602606006748747737150113207488794697369879342136632158898637529348398215211110838650184450613858330095458701807309615170814350482223259077017423473614957663630359321153124867291328161758174033028972972743424022771180662104664036306205285576270109455984955077713540350117086087967860191108122028954920957836754439818988959156002918996099715859267715547983808966864149367592758343569651869960032231333418638792990340363087590766121964019626938526976202582697949104351928836667810574924696014475214582129919944765647849262874087078594478919124600690586319504349329877883243753775251538124197406468,20806324398112704184576243642308446225385834167758222047710915865491553221121456559290405385050181445190026351137186843498701962906728774890279265822922302262674344261443633266351787522423584433088856438680222017039801221837510594012303704942258177163584539612102842678739854493210477613035711103258550560273478479277362352841578985334600196007452719273341052878795457240578018430753780869150598290734861026318283861569123861098217259089119729724503263571923384603566241538064572968952230647186501970761685868678332574820155746476145383468962025352911125509572618602029024652380792594855032573631797517407433780124767,2984534567830588608251691688517562019886934976940239944296177755224193834812017598586976214786265618202828155437088641819872658344085523203617440122990791586663797768559098311449463943487720199704106941788760276946864277974792415345700942642550277726023952217616537482804161899962996481893200668973584167349538844293867619144628567178172496162265433563681342772983054368775009029385174850706677287569940753312983986212778939947598815595002848721076684937312652495527309505744053588382568512842786184034878250903582357463020880854201625144449160004603244837252628379531756302498757122746553391615927560808029960266625,19681285575282653686371866964026575635551812532880664611876190222601081859688141586553347439412758942096084877111883472375168961225184324383968489352875717670106440217006572540605411871630725641391171380023993395232691314662393923848318294382993540810449491616527524662991307157899373490742858664974644838212306475173795164847929404327886006104677091872987173592834296913553225843321065615965897920646645086083927169011172363123935140462214285019059726271437492418936191962060610764641005376370506280067258828239222704103600176916708092576268163001234852617058752894380793333304339677721072271552272594404600260363861,17663259858420311330651766819499911841067663794994694318257191199872170158137865025958007148817857781638492835306514771303332749042829120815317355608633338052028835394702531720709875380635913577846095483312528431723891955957026638053673584169905737554185634030129649039016018518994356839547241764882921390944931575304729587593422442361903863687010228628846862342208853396044641495867576785861723973159597871732538239253298128840563941065388954934551651787261972744712209405583851147359110032083949020208533161960188954813739180009449972293158373021060141688387818302891372350131649013502869609299334048318236045598871,5298970575809274629438935393989318057761764519542767586120836445032263316761487525811021815951911099884013107458570792999455520743412617129043815044943875968069243444902286481323598638834526377417104328855033745156522241109248831526582827196555064828920153555458318257230359794631019067306886747836486535385255549193636393132450664433886493509087281083390290568729201571601929480774638279112348846248022706481056446460853658284203145411150560753280109970030570227674159359532427547564201906120131477615407933400264643596572008335881981150704968737407428485573362254058660832170694074403410494545950595818012264895776,15913403370317249903846545253264583237445426368566054050873204733344285093615027647693061965382356514660489490017289737470216855339451599323161686141225364898734459213317143215419647354792387760477998230133600223913390244574171627679693591136928514907378143973333998319592583595882555481681002615976566590485876365765518571760268938260544608828017208378436062792581980653043467844284389159435925884731521336805223809049222649874552372676573497110509098941429212961378401761184902390250234585999298135037647853709390803265128558710383431672409386841314821848625953345836234945114508861921890833145094378447829164485787,2290909140884019351426250008814545735225813230804981825833168241438120125584365814035371010990772186759925886882837107545743421629040643022748869446583860483172598682089887676740059939878553272595424436357723367398096377972698494175572434136161599049698027302739164581483237687791238697379241703838109655701932792883820617202754352159209515775921392841098109717647668579384288444138762640166641466203925793570935398566304261495839675905915184706531257340555764797653386663178215604213661066377035729358506114543600757612373813217341582075351741934166661911856401287953329256496263459473595206461438549716253839581620,16642615813361835581230500131246118445590603247887791817817316273244438476256311337001611675388574331977410141699297630317377151836311293305027088331310025109780248001730816502531361314291505497281231329646213545390817348454790771602982974763540004526670479533111992035177312072478629306988622806347623090425003234077873805375141062348645927401285345899503907001825760439541705306585854742931882134500925066002906885338189163552908934604616236359806104007315451823167682352183241953279551520079950202231330492255621315016646701261669501844925563045252616708085163536257987840050252877140816998011230187115088535718084,16010347999096675182232092054526583890655342476048555695134478148077646319292254202928857709848426726687922101503995183630866920756294444357812738165670087524526688577215556076807546011943089084967115014780281986236650136100212790809186133722139336439667178800133917927993914606420172087843235000579778849526996068548810587854703520128067422195406060143205277668392537421614569464766336104310955572146529110182880365088792241394086157577886083440548786679580400292545275535505024808973895871707731827445166453079771165377996477241584002682623055073167645192536278061988188027824852844065261608054572024963829903461213],"H2j":[3368171208877966911054339907901878144315427177489764716664525147952589494997571345476952466465636584372230416806643927079294770772639785886747559841089671070120102511739419185926825275343129268693107584218806327021288882477748577914215697371729166784288283440868236399459954587383445757960644874348547417850473459042890356424271874499317095341286743556259239705095932387025485711185437452734962326711790258196775033662070121656155183933539103178989257156247756946175745703344908852193344259286268186560067884170926994359970521939453852919421341990972981960061011629945378288288327928173529860414633963687461741921536,21571995110918784658914871089233085747498481392093921476006031602493786671249981878215451382962183306832489322303548281716296137774931836883062638257871799588636736223841397596603236825079859053119441636830060533162035824030490541191082185733831191460351456499274515867869223195196735738841516139421749973183291711819985317821732516820314960505801684638233368245136026792456696584282458766742520555425925807015416047178765452538113430822668214923191463369535833443605844329620997852520039896259519774630621573507729397714725431894641714478634392952187074508209560077240054333035743202911738795412331854359778973195140,14361846248841354239738429614485615020817620015740214377557182447187161532145777460980697522328331383902906916852306307688790083451608130261350491455026208295552005757157547049806867066926847972162187184750531821995727255016828133897770613409484181886065535775699953909464798003780913388918153183011660224430464726560354626850573087079518001579497098985920611294338802921392907919446517107741456227975646401634963060678572780580998274987217038988195161229432595476488751730989311796958677066257365863948226172977171594831544011639884849989931328654207271418544321580100757601201270000125579606365984683036050427736901,3320303882237934822574723730249906877625782534310160672723504685750059065549780868692191634937564489497907122877469551544554741543440051593275714064385262048169355745443620314041833050794531307335253819559894664711581948933864857312882072901440293913927021712377972600011615454373450050526995352982830050256391443830850515525775497974669346917338799122924286263331475349263163070978610950486766234107397409979634217974050928014066919223534136219934067215088896161064759214148618049130963680983012705398939807692207987093138939884157043400363128971664499276483693036909962979142844998423058170845192989653278227244556,11392712315645310673556256100365181042182208368042016535682634838624439633464280578340353342992697843456486856323709208993769929825667198124843256857854149171724638555790573818365215224736100981973384410995558183533272266822358013891089919574254939818330873527463833155579817319890250882056946018928950519405481352273564274138745239339555689528027209630484474043328702633331977168775903350557929023233359205813047128230741363083482041365845075249319178793999005856778680811779083784522911420519825713738930903604514930432327435755406403484491228343075922083298289929463367612180095879814334515830338256256962304365507,16128185768089596194287119128971616467728481679140585100708821051566471323843047828854183726318833284371487280925375797724567335316422823058316454263458054143106806709907496680547056853651764349462358556329487313360470751830659004515085115085503406434144518308588359624087795942838829972724870214686385899497790143468039433972576851570857473482249444251166188717970319339154993972583107254198134043017660882069243167380269891894037618164535745069845632928065376946760432598515015966819900477155552863106379035709861023910264232532374352692943776001019180723682584987138149276551856921296644229421379331608912433891787,2216711622729147643119351601279604576561222476671706440839914460051282496368367881534683081378746937805707571316950268212663028051018612966825594397873907399847514954700788018713085783872783310865267981225782070802491186153117333152717062661110252994273036185050571252614763467112197381544773361260703440205625252670499456016034457927577251901944688698835868136916669160283880144324751412122403729270589464975875662168775295336481672192780137765587777958466322897160031233145485380452023766308429956773283861365366429753738225270634870302712702783980696520536919562785018253963272279772947237341901826167911636277398,14567981249611770119460797088791616882610277285940857160650608249425344206528691122331543913667869847178068077135905754757970717904714688019328854767805335556395966314263235325078374161755665460346725642944725762703818596015903905714083108502634334495870792846224658572820537006327415243377500340330706127007814008821793048336577227035431648149947100606065474813247441707074217050761365292856644845629066245995828609114930249956124849463230151850823327413055370077318181578457937246716760725440912216906628033172873929155794447444347775998977195569636526530564164070920144286322379557192066768871877841501668738723305,11562467842115790891804601373773643847126621903349499609152938962148770984937205728801191644445725158989276699296504193090664088648177394705510081647868491010141118677836328015755807190340752111789458182176683494843129204876774659319228937425442946958815453444622877125277511242659189800732695804577042735408856749044867603169231506434230337165888447884043777386886336176295745762185799165141571995448994795987563473269027183930075484844146542824749783851152327060411300732221330038342605240436682988238960554043191119742665518743299119772957848539797927531910599793668616983919654530567233469044356313491217598173963,14001988942247671750781482079375285966547579414294794319094213847379686940578167330959958747320137628734714588973465688779508774703004652572462868416321674738451567199004872420641775754108356291951642382728451341563463073268234897512437292991864411475522021623042299363078178084134670414407763213420631947305174457007699331702204294303015464925310244650403343929391594959891748515738314022772251420423895070351394216428634037166244804545860754313566530581379130190514697248618490807663014153146208137639940027271688234812971813570187637013722635079779830294526604514749212529717398437104564243590356265592707324430248,22660381208680529934440965587759859630365737502029115748369924654698991903261875827625444059798716389150600717053198039271991446052177985348107490095372700835812383361394955848974961135498980301472468398590372824927166661721168913896457190085269560320077063240744390945543298734163933076390800852847268723891846915780866370885782050245477056357544654583119258014409021504561016925378839878361190561580782875056594285065583655990468688145199834395357403106937935824760810934700883413929457207664342072543405193505090717688282434192414638239406093224709925453132516053056802277292184257441746331824932943075086343111278,20472030140330590554727016751322746521411547021589348812503605132754052870300345339453032427074737788538570891246727822818774891000538284023878268779231690147875265496447517546051987993131805558030308294615301233476549529141133753715149811029684466002817709334036803452074715441881335148948617848448549417354051160238759910288354822541817903899839091496273435021826344319441409806973908079330351993159801831003550379943098083992503486981995525990398355622285332802868604496636639655839747683821735810491234886789689703654299736502370849656509374303361111199544583501333765966424789805698080099714702838932727164170265,2453173651401016059883376082702788558595819343620938909718003743834761063920578770151771007440124157356829685449240956671627119096461094862434828440771694576875873539491082895345114445338009283914246401641276451109273726841868022516636570181871922631150553766823691471767095455577358060583652290109547591748476465162423200240371828509110384977101559949176482932811774533277255627251591525680337416653414697852938946477765739575989782561041133771451257557157756072849234217247160968445068150218106127891386897699168070200218755068578136094949985380806928006246790329032200529105916916706533850553672076045608730359951,24113152339438360498818613385483602121911555739122745946787379178133957345957135620586264478203421944425299426192146461629084303328006516447630615633641891356240907180660156167532682435848933370915136668244592305335752238307655218128679169067763462102575980085156721937439825798887974559139719995948680828470417607776837167245694714142889348485597791698351034577938495332154328968099025912022930753095015877561713107591709857548795164690012791766454787725487399290632750389338230767552797412606609844617222343058516288469384643892784348204522341997782682670665258025662990169755315957866286658684293611644496873215267,23048127989879822710411192866890144848102725506107457207672066933390327615164057701868652098516421397166175276204189099923035751642625511125320886106285613893278788342927698548384268560900735111168363954600824026890037073968715675372129633119593307084369015870114545021114363768521678984746381386414166722200844864695581741219036038918650136132423598216731404838838590398569938445014697553573715959930243891120229359688175340044395042982004999256741864583061848148945179825358319553305735497035945950407010348447423433336328707080153581767979294379351950056937128181379551873194994067035954630194182060875682649437666,13618893464695086149676203128264379703835247962620883770951238013108147463339903484787069986025297587613907750851693587285998342458273645890621629308654871877706080796956646324471034007240766614380367007821000885398439611969420081154359024999574164769946112634981576459912811818772491470799900760145047753530968995478407930477477944129573287306569838212654312701822189291272987922653156057983889008935259264244527455188704827518079129994488508788103513618119832400499449348458232904888661877972105894911067928574676593878643851258312142433749927142945806711403413926146774157545099025460329680057003565864119710344042,23894029291617241391144328899509691451082120805949912944383938437120322549284785238294999166576087704069349411280857670919349460489513399500828536265895125463653495907166485758411354581066514943080277665731467417672021474933030712874768858153808012182457456133833868682464778542510979705494991241834256525297885337509013426009068419788422403698033836643374538850826433098217327104341285009528115639746062522009884356634868057714134080806096522631119686584895158882950387390079669636785522392222833493980203199840117132536258676406629318977553433626720193118379634005263005358473104730141003648560474105109737111011794,8925336938516965008397109104514048184046286665452569746388287155124102463448431342748346308295582163969585477123381674515410213967775651281608577967919981280923720344420733336038269189964575637162708585549385406099462739524026684819607311522399446887121322482655436562521377082292558533779186792041587188361186852658931953312216304602575717772394803653647861926317392730789837892117863267885605817028617970756887793540591824273228108598874261690153175536884068161483807477696239392976829822163308261960542651335245650622440817598987961098884462409657203750437907285145610244236094931259734945402603438305753971150592,11949666259971918796589430623190075546810486453882961593114781232790528357171489136086300172564872735213582648459678932324553671446193373613445392996846768949427585353892225809922873734606473958012848905522095066153323414491640379067553063059327565094898320425802881846169782611727703042073646692303198048486923691657532734229486488161759607766287874080676488615866925028524263799527274261471472615111756048644281578781133899646868101860588922113737985515123939591333283772116702698675273675787772365936701715064375893211337204849804346824788133348904362412793959284749560448461044309070434592388006426231060171764771,22250566339370324059402215781976249391077086920660167269541657986285216346026428267640441435642495757683689137264020871118649281135403445710476580606390835296225377720486579495200200373576733192798872047011357659910138900430140520045889539388154712432007987497852789128001047310532391671755193946030519165629053752937739899959567496721448943588557458516035029605073085115080892712303741049416122614132971525567297514147438256957998569093867126816514230762539072531021367441808139154778858187018499802649090111006001230394761758788797026721593274233504527845651968558769656875733771044784061166465882679811351871629592],"BigXj":[{"Coords":[107932666477475802631511202367582748861519739569035537904969017494701526323818,27810089900979531039053592509940878404833992140356119628629019981009106058899]},{"Coords":[70488850009775279003934303461546816167586319901288720095232797816893086714940,21365158033407193885213404713050228625397820553043856269267720323259910113340]},{"Coords":[96704419145309517259142970140495022508494287400107594467439362232020961329299,76628584944766298203991062873793502752240767184659143342509677627090500089962]},{"Coords":[28019161860991754547254544009397503028608838172584402384170752184470432984674,108882834276696603625351040619123218095898824500661874818668494090573839581587]},{"Coords":[69854419615803608419512220164651266075688659942948825382651503385261699188382,86209865999364219341605400066204025416938700532196803014526015416182305901566]},{"Coords":[55707469940275855599640808250448173151230633312005616373715718152006593734016,71581471827456608524472614862044126332419275513283203837579704443605501341979]},{"Coords":[31537542564214197931115404850756486671358385103785295421162883744455005249506,31003647934233069190792056145926504346119044635106496026002117518163562078840]},{"Coords":[71459743938853567115182393388387842195822211722537627655935266215390092032802,105621264392663357649957909617094860377111556629887291515711877643951632476111]},{"Coords":[100170179262204638729042299933877814060918019584852761639094198183345507736585,28900877763089774489040863107152228045173480683157331262486804734772631569442]},{"Coords":[3393930126761759176345687233491451168543634500428196687848693751772795262696,55773871461934232294712308387072487465508923595028614508001564000526922809830]},{"Coords":[35436174997161384450863357581481493940397620545951968086180770941965008242533,22941476771782647278770334144010957938195504420883358055133977993491797250976]},{"Coords":[20742591764203230819083960194719627433799141307841650214987882235851644570480,36792680781195360005281832466704518433303594582044389944698351592636972852101]},{"Coords":[78822613167932563650341174247543824338627391764838115664582901884987316485415,29305611808246076472515388603014476455888609363718621630903671994111327870746]},{"Coords":[106662917025753316359017201639970683777210765763056751174154469380644107823988,38376047705320523688829546978146661452201839032747402442602961204420046730181]},{"Coords":[50131378328647772110850225682895027165473791107252577081428683178756073747030,6484525664721285218064077598136507537588284647694850022336064622644441747313]},{"Coords":[63814576207919556970263190432671978386229401573575575774195362165468317841987,52351921007743438678847732376277019290979039258214198300788054101141627584484]},{"Coords":[33074537919982031116943260590723731125144796968052633499149040111855190089892,52462876494517613825042650703891412581466209764861573326649361336309483684004]},{"Coords":[46337244846970653814521818706394664913446423803670640514811670889644615970917,60622380590936530234720907025041106487069869976400399621024354043945489694205]},{"Coords":[68932201886808999446322681662607675293176822755681592496851252047161893154617,102558540543641758967834783938704783088913683989892796677072783324191846467831]},{"Coords":[47093684301174743530406169926797075725911173707597448168332637736184121729220,74517549523358620639964596401882412428175945976473031695393603496712918162101]}],"PaillierPKs":[{"N":22709559588116531632086995360614881758145847958604375585917706994116168375700793376291131544827864145364687259129107134734036373558516565338923959924703156876435469021413354399418993619174071015237246272863140297401272631661028437511282301913323857011886496541494453371682094558243513835287198378640755589750985308457641295136946180231598093936765306071278862423297167033582450972276390473663053961764398615170355333807856718875047329620163477731845253445115727590642190491372191245975524943279344261890117425706855830582201691939059698357650223528988243289388677629074389631868130733940366531485671699566601163615661},{"N":23443957150234287781524191819714980056334495753799141564738532515877512840928595615570444488815473106829833471979932833846134743028112638013245259429585839683894162551870479232892081727695293106142145837752188330564435054323350976552725925455074206192778580457152750035194725712966851385101176362564718763658489874740341398176203077931510475924742361380746164713522692182335455005818339528332609035897638651762193188267900136476551393608916669622907100712471489443414455950510417300576764177277906265582678299980344888299166427651633758323734973558749488731824311505669417847053850760848940423643750519510719400853833},{"N":22287028689259504755807149120904050002396020193634043129060485604472139332057712093383073269246020913354970143960065213561811698182428208504100112877284663913440710058603853492628849020664094889598583038642474751945815658301741607940280803922553940685657785019086609257141579057485855668397778602262577280637009340765489166395694519909332104264865369924039797553524566502151933416185073911748303993059047774791584591703105106437459703251723998725467328206119091524784524659754164199098692948259716816125731645175450298738430174307931086107554346505367596601043514472572775722114263120820933996056766066990263737006037},{"N":21778455942403717802437188616130445569467912356333711523204106321468333958250985526522676150458521139952234508699903096368286173136552336834061186195705878795885628080532376972447127537374960052755412900354192740274699607194495256559382391407619506149746521336051948176770581697936379025338953179299724284866217851767053361169462746892201032000776732741861429352495405542992367041691709412944529198233031428083828538853890568987466209820731450551650370292813109604532198408719181905952928419308306626664706489746484860069309396704199131581338218405332252354539932883923534658047809067343949198229794022084007329008301},{"N":29488834801717020514549557511738862835006604218586783270956635930974777840977382736818004943434492491272083417763033198615963445455042431681833978353867438176815774128330303688651059852719975859250721567522453513175104614385098138081209372251486732213899964978141377939387124226524201851559541320231331748973500724292675746395999336271645347092285737228923411234511145980962423027637945866866145915490526131803713409632083226573065035861386075817821231913413262072294132940186959486615122177174171466978866072639941945123654758187894442697758141328636666389957637295324259708835849664958476600091423260629670847006421},{"N":25268781854018641821625117526035412649921406362359871346957405856614663043063881662682001256500050697385215601589085313282671061645985003913281457834036290368462929918763869754871955608135979298238482437377851913552755913815405018774915484866488142406303297444296659799278477225336231564636195441498040062964451813900346208766721654100661710718867197194733579941984196715209521167970358227552984230489600141394198144474928084583860744656840175887777161454380202188440178263993042579519816969496156562013371732648143667185817225623397113488180419930136011024805515953457443050643425221010148081098971618629282508806153},{"N":24077030535873838147372990238338423111894661719881851208383511932936303788667059523325649062922462968249640702042151293306587810036594125879862518141403476609262478705296844024060273562609291573351215091787555942245982552314643486135981274381916357213038852978171063476276539384812002232533351978097782562939609101707149234139391638125337919614533689982228496010017193463462456934753130533077727108799001253943486336718218272844533405886783727956436625979626270665501149887064412642510585330023269746464208739229956710668053204092869919317416558618819105166451453240320574158658174090376334547079951345889147202424197},{"N":24121210025310295136286367465067731861316363403302816495348899075683542883649267862423504534408270521528934904000166037695519824119622953526124849500602533136680339478221010232315859804261374907195769559713293619918530079931895046819311703445607618111244570268187554380693098539122537784889700313005700764528116670706472264450599583329582635827622249925780628859318211609939169828662135675938640346560681426019582628979275573701346775265344080547061237809761964885298244705276139799178175782218409921284339726928435810584460742981474010807766522632224843035722465220411812727073796692626221078545796203402892726398073},{"N":26956782591324520026471701264974010002551430844929064558517606333109244333104364565707985261498791802440691867651722784210280888161145432103606824079477489895607158911928686613189674072708812330140444741131333062722881890279580684791181148664415766399323289281546841599984936640417820094077391333063403828290767644884268872176714175866593843027335088472731880830448148161449695591865312724115778446298294191846018327598860718546463796845910458753293225328770367785304521228332493000905274903063796918859478998380272311510096333363160486944174426731511854410356169028732110892177884127982236790065871058497952170624401},{"N":26249557760815986852034237905417683014048371748204856284575862917968310785883486514046189771449794410062311941320778404041317694258818896788913080156960590072834802977027251267292982532721343074208805165986815554608059680417209847673748867108719737464989377176319950884300513507127044766841349776517208994115342645229445634306184178062065483947743824551463650982111893910449653832587022792656303977671598375329018430362166017195461057586254287305421091325058340750141735758488815547176349755224428765382123772435956499576803085012124378000542928725389368171404677133866847871236251441021957443853014282022367009685861},{"N":29234737641692976595774236923019314216135921756073342884203680618120226690739166288052322806435356115092650761656136403373733697692050475566331202817414926309882834844059857181882811689758047525443057988160495074334079542319370840285641441603178202467820462588826229922786870937847036888109767951604636584098102615282750014508387427358079100450062680715472456836097388046216848854107984658532128468648705497171277133763535425127577293318939184956565230142817502839346792604559307183239212332206857888330805061669830296766718735240517983609617995793272006065303892130080909658027060291496416496673503247698087863812741},{"N":23656386949781378983561509210223997485938600678969404520355733863050336777307520388106184053630795530040934267843013912848246799628076757878172461266778291537251825140340096706161543161977283845709058224884977213986434571463756330276479208682952096086332163009127424608568458165322976353036562065434426650045708578336603634894217912009997772105108262453019882143577371634194078714264992380438885990335741008955488808069468796086801023973076920357953123958081822096146124559004458043648352764252390085772923647155984579633692639191141425745475545839873632550694666801559519849238477058285069280151324843991596401646381},{"N":23799985430892428550287426639163393896421663100337917557737015159273107046495772196531619480943457572757018895004491581880198797117841320493538657520011738472038586707181276745476787089472101888983238214242261897466709975139313526918983914349699164310009561585851364405464439780111046692215844366708075439030620693316351016954915727063684631173044817825576871464988585229583331260702104268887569088888141481975510438061934915565917441018736997897082388887244599485050548831301667982348795441755679549415459512278548728977097478254566801983960996625453970296380670902503277224729081061542066926552900097298958795919921},{"N":23398981485141581657111580810187356464859260220476400872431878471724619284703169207796437272649895475435460945312990810473873577007856956495840504596329080928974891464665270653430872926713471055976901497303072174459471872022720981442223753911960555794844008812776454183058593769792366230853507105586338576934054995838272457499054915439455088496111012971850904735289245691042597216634196809202787360353382667100073960437339209464655220130141692780283364216457426778903461083049390591667885095066567970867147659207581183606534554025283663685502553767113396678790806758816850832944906936477595076662914396730813902861273},{"N":24645804484208008107774215519843481629641338685651268289287772114412526440944111199969614165736177320304962312701073205538949325003439610780511806547845684862319242490345551374064725883323450769869814834613757570218276860284970150303912936880248283750218053176729988470901025014948637258535944241625099061769802348376561541469733700398108049774899180411488580995483844861534070436865153589414051441506488195269353530135159150725450897767102214976100194473384482425657735122085724544900424323758582364844065404991831422328546732900258700279735848044809564185617079126240413557300335393565946088211107690073344594774029},{"N":23664465666512928010084076006211208070039097235865486451752383277009646489200010451773766854885315852604650109050180997494686499532996982524560956955784208153283884502900612829692080614937231941501430129101050170848135543483642879522140453631883679490750446245717832265221232589489474380464199065201167874127465810334527670252907568617820949350516778153996202871756067806159248004814563340677682071536108582393686279672503548392243690499337315202892692273695083478754736347613219568092769421161385508903701795824994052294039246344316342377047969959511601521901736714883097032290625287691937066549723767146291790114657},{"N":22165609813091667259068375406991183583538522584875908765309739098448534648989953434651686788146626220283972510122914357995219529654582068510398362007031593307847827533082059785375352080923687640731375327188268078188971415753864060723639564145551626769223269559344648109409611860616931934210627553354435590764505138165455042290624193631088250055962033560484870481238850988856340320616852463026890656813658017413542014132396994215496811530247375977104307808133564653689276479112825279061966541271092780066027501498091088819663615972345385914896991989394778860649710938578818683661928070093400675043514978345177529652389},{"N":24352137164919775060505902875895344669551891343219870713119659495462675754712808458066602996522267529841963340495194383402601416044030073771848283771276922546693343786778909195920195728052430645791682092298169597213540403251589258864324656830830912032021695409682689693414793104678019843226941004344886835923010707685858497420014814885662783481710790760565625597934856999445792014460533464855807508832344902590088930105318969772303090927340774137226985715726042801943592444113021856673268564036683304420372700405680896320106848396385562893886698977710031223312091933030330629827691164100994176634674536649129152931477},{"N":24388425323514301995345880181969195093222141730097776998750148283180811486102209130079655780738706237274584643472954914248041737365215477795339570700387683883122567928523036945799350046333477704674538444513982433086664207664876244841911099162128315338715496189423824903190803189243082722638413039421880070666657272413079871744422617706188003161639646693501252928939859937588136677607569634910081471599993513483449765647227570734163189729311880395414909879933139619835138785852476313690881562300854512419432999005203281002911021482679309149225773391703345476483158302622073477221903694296256566718995262186459619480089},{"N":21604728584405813409256303272593334134333518895675489098410576803850613670962405878762275711641486977471395420657043551402890823783906820971712770494973201278527635005537714974340519544361402189093858595896231890523544098157276831993549216761475195055251372273062282101577640320665049775934814411518181030603401788639796770568692007642464803606076672769360069701571162199680486773757848273630254180550410784187377722267755203781450486589090106764541644204842436002216866597611146281471192249537747681020939314396157603364418120170135828923470079746789793341042476885118587449440114091973976013051496269141578521399429}],"ECDSAPub":{"Coords":[82191134404558877049244897640959846424169542769967270904890689024123037541855,102677683688073592669768840687667774566029618427936181452214529135934890152533]}} \ No newline at end of file diff --git a/tss/wire.go b/tss/wire.go index 2cba46fe..bb9234ba 100644 --- a/tss/wire.go +++ b/tss/wire.go @@ -15,7 +15,8 @@ import ( ) const ( - ProtoNamePrefix = "binance.tss-lib.ecdsa." + ECDSAProtoNamePrefix = "binance.tss-lib.ecdsa." + EDDSAProtoNamePrefix = "binance.tss-lib.eddsa." ) // Used externally to update a LocalParty with a valid ParsedMessage