From b497bd8c2d4e59d44ca0d01a80c2e73b565eee64 Mon Sep 17 00:00:00 2001 From: Alfonso Bribiesca Date: Thu, 25 Jul 2024 11:29:31 -0600 Subject: [PATCH 1/3] add username registration transactions --- src/Configuration/Fee.php | 2 +- src/Enums/Fees.php | 2 +- src/Enums/Types.php | 2 +- src/Transactions/Builder/HtlcLockBuilder.php | 2 +- .../Builder/UsernameRegistrationBuilder.php | 66 +++++++++++++++++++ src/Transactions/Deserializer.php | 4 +- .../Types/UsernameRegistration.php | 43 ++++++++++++ tests/Concerns/Serialize.php | 8 +-- .../Builder/UsernameRegistrationTest.php | 54 +++++++++++++++ .../UsernameRegistrationTest.php | 56 ++++++++++++++++ .../Serializers/UsernameRegistrationTest.php | 31 +++++++++ .../username-registration-sign.json | 18 +++++ 12 files changed, 275 insertions(+), 13 deletions(-) create mode 100644 src/Transactions/Builder/UsernameRegistrationBuilder.php create mode 100644 src/Transactions/Types/UsernameRegistration.php create mode 100644 tests/Unit/Transactions/Builder/UsernameRegistrationTest.php create mode 100644 tests/Unit/Transactions/Deserializers/UsernameRegistrationTest.php create mode 100644 tests/Unit/Transactions/Serializers/UsernameRegistrationTest.php create mode 100644 tests/fixtures/transactions/username_registration/username-registration-sign.json diff --git a/src/Configuration/Fee.php b/src/Configuration/Fee.php index 90f3d364..568983e2 100644 --- a/src/Configuration/Fee.php +++ b/src/Configuration/Fee.php @@ -37,7 +37,7 @@ class Fee Types::IPFS => Fees::IPFS, Types::MULTI_PAYMENT => Fees::MULTI_PAYMENT, Types::VALIDATOR_RESIGNATION => Fees::VALIDATOR_RESIGNATION, - Types::HTLC_LOCK => Fees::HTLC_LOCK, + Types::USERNAME_REGISTRATION => Fees::USERNAME_REGISTRATION, Types::HTLC_CLAIM => Fees::HTLC_CLAIM, Types::HTLC_REFUND => Fees::HTLC_REFUND, ]; diff --git a/src/Enums/Fees.php b/src/Enums/Fees.php index 94273b36..c6ef2202 100644 --- a/src/Enums/Fees.php +++ b/src/Enums/Fees.php @@ -36,7 +36,7 @@ class Fees public const VALIDATOR_RESIGNATION = '2500000000'; - public const HTLC_LOCK = '10000000'; + public const USERNAME_REGISTRATION = '2500000000'; public const HTLC_CLAIM = '0'; diff --git a/src/Enums/Types.php b/src/Enums/Types.php index af289871..ad2c9d16 100644 --- a/src/Enums/Types.php +++ b/src/Enums/Types.php @@ -36,7 +36,7 @@ class Types public const VALIDATOR_RESIGNATION = 7; - public const HTLC_LOCK = 8; + public const USERNAME_REGISTRATION = 8; public const HTLC_CLAIM = 9; diff --git a/src/Transactions/Builder/HtlcLockBuilder.php b/src/Transactions/Builder/HtlcLockBuilder.php index 9577be2d..8850b80b 100644 --- a/src/Transactions/Builder/HtlcLockBuilder.php +++ b/src/Transactions/Builder/HtlcLockBuilder.php @@ -58,7 +58,7 @@ public function vendorField(string $vendorField): self */ protected function getType(): int { - return \ArkEcosystem\Crypto\Enums\Types::HTLC_LOCK; + return \ArkEcosystem\Crypto\Enums\Types::USERNAME_REGISTRATION; } protected function getTypeGroup(): int diff --git a/src/Transactions/Builder/UsernameRegistrationBuilder.php b/src/Transactions/Builder/UsernameRegistrationBuilder.php new file mode 100644 index 00000000..41b4cdf1 --- /dev/null +++ b/src/Transactions/Builder/UsernameRegistrationBuilder.php @@ -0,0 +1,66 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace ArkEcosystem\Crypto\Transactions\Builder; + +use ArkEcosystem\Crypto\Transactions\Types\UsernameRegistration; + +/** + * This is the username registration transaction class. + */ +class UsernameRegistrationBuilder extends AbstractTransactionBuilder +{ + /** + * Create a new delegate registration transaction instance. + */ + public function __construct() + { + parent::__construct(); + + $this->transaction->data['asset'] = []; + } + + /** + * Set the username to assign. + * + * @param string $username + * + * @return self + */ + public function usernameAsset(string $username): self + { + if ($username) { + $this->transaction->data['asset']['username'] = $username; + } + + return $this; + } + + /** + * {@inheritdoc} + */ + protected function getType(): int + { + return \ArkEcosystem\Crypto\Enums\Types::USERNAME_REGISTRATION; + } + + protected function getTypeGroup(): int + { + return \ArkEcosystem\Crypto\Enums\TypeGroup::CORE; + } + + protected function getTransactionInstance(): object + { + return new UsernameRegistration(); + } +} diff --git a/src/Transactions/Deserializer.php b/src/Transactions/Deserializer.php index c0e6ca3d..fe3b3839 100644 --- a/src/Transactions/Deserializer.php +++ b/src/Transactions/Deserializer.php @@ -40,9 +40,7 @@ class Deserializer Types\IPFS::class, Types\MultiPayment::class, Types\ValidatorResignation::class, - Types\HtlcLock::class, - Types\HtlcClaim::class, - Types\HtlcRefund::class, + Types\UsernameRegistration::class, ]; /** diff --git a/src/Transactions/Types/UsernameRegistration.php b/src/Transactions/Types/UsernameRegistration.php new file mode 100644 index 00000000..730d2f86 --- /dev/null +++ b/src/Transactions/Types/UsernameRegistration.php @@ -0,0 +1,43 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace ArkEcosystem\Crypto\Transactions\Types; + +use ArkEcosystem\Crypto\ByteBuffer\ByteBuffer; + +/** + * This is the serializer class. + */ +class UsernameRegistration extends Transaction +{ + public function serialize(array $options = []): ByteBuffer + { + $buffer = ByteBuffer::new(1); + + $username = $this->data['asset']['username']; + + $buffer->writeUint8(strlen($username)); + $buffer->writeString($username); + + return $buffer; + } + + public function deserialize(ByteBuffer $buffer): void + { + $usernameLength = $buffer->readUint8(); + + $this->data['asset'] = [ + 'username' => $buffer->readString($usernameLength), + ]; + } +} diff --git a/tests/Concerns/Serialize.php b/tests/Concerns/Serialize.php index d6f1f6db..abfaffc2 100644 --- a/tests/Concerns/Serialize.php +++ b/tests/Concerns/Serialize.php @@ -14,14 +14,12 @@ namespace ArkEcosystem\Tests\Crypto\Concerns; use ArkEcosystem\Crypto\Transactions\Serializer; -use ArkEcosystem\Crypto\Transactions\Types\HtlcClaim; -use ArkEcosystem\Crypto\Transactions\Types\HtlcLock; -use ArkEcosystem\Crypto\Transactions\Types\HtlcRefund; use ArkEcosystem\Crypto\Transactions\Types\IPFS; use ArkEcosystem\Crypto\Transactions\Types\MultiPayment; use ArkEcosystem\Crypto\Transactions\Types\MultiSignatureRegistration; use ArkEcosystem\Crypto\Transactions\Types\SecondSignatureRegistration; use ArkEcosystem\Crypto\Transactions\Types\Transfer; +use ArkEcosystem\Crypto\Transactions\Types\UsernameRegistration; use ArkEcosystem\Crypto\Transactions\Types\ValidatorRegistration; use ArkEcosystem\Crypto\Transactions\Types\ValidatorResignation; use ArkEcosystem\Crypto\Transactions\Types\Vote; @@ -37,9 +35,7 @@ trait Serialize IPFS::class, MultiPayment::class, ValidatorResignation::class, - HtlcLock::class, - HtlcClaim::class, - HtlcRefund::class, + UsernameRegistration::class, ]; protected function assertSerialized(array $fixture): void diff --git a/tests/Unit/Transactions/Builder/UsernameRegistrationTest.php b/tests/Unit/Transactions/Builder/UsernameRegistrationTest.php new file mode 100644 index 00000000..79a78f85 --- /dev/null +++ b/tests/Unit/Transactions/Builder/UsernameRegistrationTest.php @@ -0,0 +1,54 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace ArkEcosystem\Tests\Crypto\Unit\Transactions\Builder; + +use ArkEcosystem\Crypto\Transactions\Builder\UsernameRegistrationBuilder; +use ArkEcosystem\Crypto\Transactions\Serializer; +use ArkEcosystem\Tests\Crypto\TestCase; + +/** + * This is the delegate registration builder test class. + * + * @author Brian Faust + * @covers \ArkEcosystem\Crypto\Transactions\Builder\UsernameRegistrationBuilder + */ +class UsernameRegistrationTest extends TestCase +{ + /** @test */ + public function it_should_sign_it_with_a_passphrase() + { + $transaction = UsernameRegistrationBuilder::new() + ->usernameAsset('alfonsobries') + ->sign($this->passphrase); + + $this->assertTrue($transaction->verify()); + } + + /** @test */ + public function it_should_match_fixture_passphrase() + { + $fixture = $this->getTransactionFixture('username_registration', 'username-registration-sign'); + + $builder = UsernameRegistrationBuilder::new() + ->withFee($fixture['data']['fee']) + ->withNonce($fixture['data']['nonce']) + ->withNetwork($fixture['data']['network']) + ->usernameAsset($fixture['data']['asset']['username']) + ->sign($this->passphrase); + + $this->assertTrue($builder->verify()); + $this->assertSameSerialization($fixture['serialized'], Serializer::new($builder->transaction)->serialize()->getHex()); + $this->assertSameTransactions($fixture, $builder->transaction->data); + } +} diff --git a/tests/Unit/Transactions/Deserializers/UsernameRegistrationTest.php b/tests/Unit/Transactions/Deserializers/UsernameRegistrationTest.php new file mode 100644 index 00000000..c7a66e9e --- /dev/null +++ b/tests/Unit/Transactions/Deserializers/UsernameRegistrationTest.php @@ -0,0 +1,56 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace ArkEcosystem\Tests\Crypto\Unit\Transactions\Deserializers; + +use ArkEcosystem\Crypto\Transactions\Deserializer; +use ArkEcosystem\Crypto\Transactions\Types\UsernameRegistration; +use ArkEcosystem\Tests\Crypto\TestCase; + +/** + * This is the delegate registration deserializer test class. + * + * @covers \ArkEcosystem\Crypto\Transactions\Types\UsernameRegistration + */ +class UsernameRegistrationTest extends TestCase +{ + /** @test */ + public function it_should_deserialize_the_transaction_signed_with_a_passphrase() + { + $fixture = $this->getTransactionFixture('username_registration', 'username-registration-sign'); + + $this->assertTransaction($fixture); + } + + private function assertTransaction(array $fixture): UsernameRegistration + { + $actual = $this->assertDeserialized($fixture, [ + 'version', + 'network', + 'type', + 'typeGroup', + 'nonce', + 'senderPublicKey', + 'fee', + 'asset', + 'signature', + 'secondSignature', + 'amount', + 'id', + ]); + + $this->assertTrue($actual->verify()); + + return $actual; + } +} diff --git a/tests/Unit/Transactions/Serializers/UsernameRegistrationTest.php b/tests/Unit/Transactions/Serializers/UsernameRegistrationTest.php new file mode 100644 index 00000000..658cd65f --- /dev/null +++ b/tests/Unit/Transactions/Serializers/UsernameRegistrationTest.php @@ -0,0 +1,31 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace ArkEcosystem\Tests\Crypto\Unit\Transactions\Serializers; + +use ArkEcosystem\Crypto\Transactions\Serializer; +use ArkEcosystem\Tests\Crypto\TestCase; + +/** + * This is the delegate registration serializer test class. + * + * @covers \ArkEcosystem\Crypto\Transactions\Types\UsernameRegistration + */ +class UsernameRegistrationTest extends TestCase +{ + /** @test */ + public function it_should_serialize_the_transaction_with_a_passphrase() + { + $this->assertSerialized($this->getTransactionFixture('username_registration', 'username-registration-sign')); + } +} diff --git a/tests/fixtures/transactions/username_registration/username-registration-sign.json b/tests/fixtures/transactions/username_registration/username-registration-sign.json new file mode 100644 index 00000000..f40a509d --- /dev/null +++ b/tests/fixtures/transactions/username_registration/username-registration-sign.json @@ -0,0 +1,18 @@ +{ + "data": { + "version": 1, + "network": 30, + "typeGroup": 1, + "type": 8, + "nonce": "4", + "senderPublicKey": "023efc1da7f315f3c533a4080e491f32cd4219731cef008976c3876539e1f192d3", + "fee": "2500000000", + "amount": "0", + "asset": { + "username": "simple_tx_tester" + }, + "signature": "70014805da364407f71ca7e09dae5a685af562b985279e370d1a936ebbe7c2545dca35b0f0f30b72eaee0ca042beb6ef2cab5666dd42831a7d0dacac3d962563", + "id": "a50b909f5b483ef1a9bebff66582de169782d3a8adc3e8fca7b183c39738c721" + }, + "serialized": "ff011e0100000008000400000000000000023efc1da7f315f3c533a4080e491f32cd4219731cef008976c3876539e1f192d300f9029500000000001073696d706c655f74785f74657374657270014805da364407f71ca7e09dae5a685af562b985279e370d1a936ebbe7c2545dca35b0f0f30b72eaee0ca042beb6ef2cab5666dd42831a7d0dacac3d962563" +} From 3b8b7e6b979b7d93f7c28047df7854aea2bd4908 Mon Sep 17 00:00:00 2001 From: Alfonso Bribiesca Date: Thu, 25 Jul 2024 11:42:50 -0600 Subject: [PATCH 2/3] add username resignation --- .php-cs-fixer.cache | 2 +- src/Configuration/Fee.php | 2 +- src/Enums/Fees.php | 2 +- src/Enums/Types.php | 2 +- .../Builder/UsernameResignationBuilder.php | 48 ++++++++++++++++ src/Transactions/Deserializer.php | 1 + .../Types/UsernameResignation.php | 31 ++++++++++ tests/Concerns/Serialize.php | 2 + .../Builder/UsernameResignationTest.php | 51 +++++++++++++++++ .../Deserializers/UsernameResignationTest.php | 56 +++++++++++++++++++ .../Serializers/UsernameResignationTest.php | 31 ++++++++++ .../username-resignation-sign.json | 15 +++++ 12 files changed, 239 insertions(+), 4 deletions(-) create mode 100644 src/Transactions/Builder/UsernameResignationBuilder.php create mode 100644 src/Transactions/Types/UsernameResignation.php create mode 100644 tests/Unit/Transactions/Builder/UsernameResignationTest.php create mode 100644 tests/Unit/Transactions/Deserializers/UsernameResignationTest.php create mode 100644 tests/Unit/Transactions/Serializers/UsernameResignationTest.php create mode 100644 tests/fixtures/transactions/username_resignation/username-resignation-sign.json diff --git a/.php-cs-fixer.cache b/.php-cs-fixer.cache index 90cff5cd..29131ab4 100644 --- a/.php-cs-fixer.cache +++ b/.php-cs-fixer.cache @@ -1 +1 @@ -{"php":"8.1.2-1ubuntu2.18","version":"3.59.3:v3.59.3#30ba9ecc2b0e5205e578fe29973c15653d9bfd29","indent":" ","lineEnding":"\n","rules":{"array_syntax":{"syntax":"short"},"binary_operator_spaces":{"default":"single_space","operators":{"=":"align","=>":"align"}},"blank_line_after_namespace":true,"blank_line_after_opening_tag":true,"blank_line_before_statement":{"statements":["break","continue","declare","return","throw","try"]},"braces":true,"cast_spaces":true,"class_attributes_separation":{"elements":{"const":"one","method":"one","property":"one"}},"class_definition":true,"concat_space":{"spacing":"none"},"constant_case":{"case":"lower"},"declare_equal_normalize":true,"declare_strict_types":true,"echo_tag_syntax":{"format":"long"},"elseif":true,"encoding":true,"final_internal_class":true,"full_opening_tag":true,"fully_qualified_strict_types":true,"function_declaration":true,"function_typehint_space":true,"heredoc_to_nowdoc":true,"include":true,"increment_style":{"style":"post"},"indentation_type":true,"linebreak_after_opening_tag":true,"line_ending":true,"lowercase_cast":true,"lowercase_keywords":true,"lowercase_static_reference":true,"magic_method_casing":true,"magic_constant_casing":true,"method_argument_space":true,"multiline_whitespace_before_semicolons":{"strategy":"no_multi_line"},"native_function_casing":true,"new_with_braces":true,"no_alias_functions":true,"no_blank_lines_after_class_opening":true,"no_blank_lines_after_phpdoc":true,"no_closing_tag":true,"no_empty_phpdoc":true,"no_empty_statement":true,"no_extra_blank_lines":{"tokens":["extra","throw","use","use_trait"]},"no_leading_import_slash":true,"no_leading_namespace_whitespace":true,"no_mixed_echo_print":{"use":"echo"},"no_multiline_whitespace_around_double_arrow":true,"no_short_bool_cast":true,"no_singleline_whitespace_before_semicolons":true,"no_spaces_after_function_name":true,"no_spaces_around_offset":{"positions":["inside"]},"no_spaces_inside_parenthesis":true,"no_trailing_comma_in_list_call":true,"no_trailing_comma_in_singleline_array":true,"no_trailing_whitespace":true,"no_trailing_whitespace_in_comment":true,"no_unneeded_control_parentheses":{"statements":["break","clone","continue","echo_print","return","switch_case","yield"]},"no_unreachable_default_argument_value":true,"no_unused_imports":true,"no_useless_else":true,"no_useless_return":true,"no_whitespace_before_comma_in_array":true,"no_whitespace_in_blank_line":true,"normalize_index_brace":true,"not_operator_with_successor_space":true,"object_operator_without_whitespace":true,"ordered_class_elements":true,"ordered_imports":{"sort_algorithm":"alpha"},"php_unit_strict":true,"php_unit_test_class_requires_covers":true,"phpdoc_add_missing_param_annotation":true,"phpdoc_indent":true,"phpdoc_inline_tag_normalizer":true,"phpdoc_no_access":true,"phpdoc_no_package":true,"phpdoc_no_useless_inheritdoc":true,"phpdoc_order":true,"phpdoc_scalar":true,"phpdoc_single_line_var_spacing":true,"phpdoc_summary":true,"phpdoc_to_comment":{"ignored_tags":["var"]},"phpdoc_trim":true,"phpdoc_types":true,"phpdoc_var_without_name":true,"psr_autoloading":true,"self_accessor":true,"semicolon_after_instruction":true,"short_scalar_cast":true,"simplified_null_return":true,"single_blank_line_at_eof":true,"single_blank_line_before_namespace":true,"single_class_element_per_statement":{"elements":["const","property"]},"single_import_per_statement":true,"single_line_after_imports":true,"single_line_comment_style":{"comment_types":["hash"]},"single_quote":true,"single_trait_insert_per_statement":true,"space_after_semicolon":true,"standardize_not_equals":true,"strict_comparison":true,"strict_param":true,"switch_case_semicolon_to_colon":true,"switch_case_space":true,"ternary_operator_spaces":true,"trailing_comma_in_multiline":{"elements":["arrays"]},"trim_array_spaces":true,"unary_operator_spaces":true,"visibility_required":{"elements":["property","method","const"]},"whitespace_after_comma_in_array":true},"hashes":{"tests\/Helpers.php":"ead3b754e9d1064afb42b4ba295f7801","tests\/Analysis\/AnalysisTest.php":"cbbd5c2285fef22e0e0ba587bf532921","tests\/TestCase.php":"3c90f64bca41edc46109bf117931ff53","tests\/Concerns\/Deserialize.php":"b3b4f195433141dd1777f1c06f609369","tests\/Concerns\/Serialize.php":"16811d8f0c0a976d6cb09315473e4e24","tests\/Concerns\/Fixtures.php":"c9de325db453e274d1080579d184a62c","tests\/Pest.php":"e94ffd859b54a678b7ea5aa68876c925","tests\/Unit\/ByteBuffer\/ByteBufferTest.php":"3f2ccca6307fb3dfb53c592d84195d14","tests\/Unit\/ByteBuffer\/Concerns\/TransformableTest.php":"64f87f6a19e09d5fc5abe196c1910dff","tests\/Unit\/ByteBuffer\/Concerns\/Writes\/FloatsTest.php":"9a32203626cc79e050f42c14fa3e6ba7","tests\/Unit\/ByteBuffer\/Concerns\/Writes\/StringsTest.php":"da21b61dca9950da63270ab8993ae014","tests\/Unit\/ByteBuffer\/Concerns\/Writes\/UnsignedIntegerTest.php":"f3b02a10025b3544d1b825fbd2692b32","tests\/Unit\/ByteBuffer\/Concerns\/Writes\/HexTest.php":"a5296fa0dc0e72b7e3cdce32b126b84e","tests\/Unit\/ByteBuffer\/Concerns\/Writes\/IntegerTest.php":"849b9922e0623d0042dd7c1adedb3da3","tests\/Unit\/ByteBuffer\/Concerns\/OffsetableTest.php":"a62d22fff1ff4e5f350d584f1ddf60cd","tests\/Unit\/ByteBuffer\/Concerns\/SizeableTest.php":"cbd2994ce7be1ef9c086291483797ab5","tests\/Unit\/ByteBuffer\/Concerns\/InitialisableTest.php":"3670bb0159fa8cd97075fe71489ab1d9","tests\/Unit\/ByteBuffer\/Concerns\/PositionableTest.php":"8ef867799d158bcbe44b2bee3ce36a83","tests\/Unit\/ByteBuffer\/Concerns\/Reads\/FloatsTest.php":"291829435c86a2c093fbb886a56a2b88","tests\/Unit\/ByteBuffer\/Concerns\/Reads\/StringsTest.php":"263c9acf17a9a1bf5fa32ab1eeae0b29","tests\/Unit\/ByteBuffer\/Concerns\/Reads\/UnsignedIntegerTest.php":"bc1ba970efad3acc0f1d57667efa0402","tests\/Unit\/ByteBuffer\/Concerns\/Reads\/HexTest.php":"327d716d6c6da6da3c490fa293afd49e","tests\/Unit\/ByteBuffer\/Concerns\/Reads\/IntegerTest.php":"783a66094d698d93bd00f59236f7a093","tests\/Unit\/ByteBuffer\/LengthMapTest.php":"566eadccee85259d94a620578a542dbf","tests\/Unit\/Utils\/SlotTest.php":"0f9639a94ca904aab58de8e2bee771e7","tests\/Unit\/Utils\/MessageTest.php":"f53f55fb0cc3b34ecba4e36f11ccad3a","tests\/Unit\/Identities\/PrivateKeyTest.php":"03f1961d973ed6b8c692b962da4aa32a","tests\/Unit\/Identities\/PublicKeyTest.php":"191c8e3d703ed822b6023cd79bbada70","tests\/Unit\/Identities\/WIFTest.php":"0d0ecbed55770bfcc522ff72bfcb1706","tests\/Unit\/Identities\/AddressTest.php":"a4ab06676fde6ee32c0edc8f9ef9589e","tests\/Unit\/Networks\/NetworkTestCase.php":"080da14e3d30370dab0e5c325e883b1e","tests\/Unit\/Networks\/DevnetTest.php":"55731cf7389728d924c87d3bf591318a","tests\/Unit\/Networks\/MainnetTest.php":"ef8ae566506f3d797fa9f6a117acc844","tests\/Unit\/Networks\/TestnetTest.php":"ae92bf475035ad441956192704e33729","tests\/Unit\/Configuration\/NetworkTest.php":"a0c93282667a0db8c7746e105a3a23f5","tests\/Unit\/Configuration\/FeeTest.php":"bcc4844a5eaa86d2423b87d9413e07f3","tests\/Unit\/Transactions\/Serializers\/TransferTest.php":"7c894b0020554cccbeb2271cc1983d07","tests\/Unit\/Transactions\/Serializers\/HtlcRefundTest.php":"96c6006f6d918c66b25796120eee0ce6","tests\/Unit\/Transactions\/Serializers\/HtlcLockTest.php":"a65043f154c5a19be9420835d915039a","tests\/Unit\/Transactions\/Serializers\/MultiSignatureRegistrationTest.php":"3f373084bd7e0a66d9296215e55dc22b","tests\/Unit\/Transactions\/Serializers\/DelegateRegistrationTest.php":"605f60af77ae8daedfea585fff101184","tests\/Unit\/Transactions\/Serializers\/HtlcClaimTest.php":"5b46d1b6e9f5247a91789d9b0a09626e","tests\/Unit\/Transactions\/Serializers\/DelegateResignationTest.php":"528745d73b842e540838527e42b6c542","tests\/Unit\/Transactions\/Serializers\/SecondSignatureRegistrationTest.php":"4e6287eb734f15dc820142d0dedec621","tests\/Unit\/Transactions\/Serializers\/VoteTest.php":"83244de955fdf5281108357580ee88ab","tests\/Unit\/Transactions\/Serializers\/MultiPaymentTest.php":"74f8fb7ad9eaa7dd641a94662d33e3f7","tests\/Unit\/Transactions\/Serializers\/IPFSTest.php":"ee6595523f02439dd9bcebf92822bd81","tests\/Unit\/Transactions\/Deserializers\/TransferTest.php":"2d2ec72619d1c85d50e5083ee03e3d47","tests\/Unit\/Transactions\/Deserializers\/HtlcRefundTest.php":"43b70a1325c397635dc3d06d4f150308","tests\/Unit\/Transactions\/Deserializers\/HtlcLockTest.php":"533a3a85afba6e66281fe5310a0209d9","tests\/Unit\/Transactions\/Deserializers\/MultiSignatureRegistrationTest.php":"4d554fe98a83156f2a508967ccf2f219","tests\/Unit\/Transactions\/Deserializers\/DelegateRegistrationTest.php":"fe619e7dcde26dbe370a4eb5c46c5d1a","tests\/Unit\/Transactions\/Deserializers\/HtlcClaimTest.php":"8f0defcd3cefeb7f2ca0cf40d2d58249","tests\/Unit\/Transactions\/Deserializers\/DelegateResignationTest.php":"2f5c500c5d02e0a3bf96344b5b3de8f9","tests\/Unit\/Transactions\/Deserializers\/SecondSignatureRegistrationTest.php":"11412d26d7c4d6a72d1ae62f90488f6d","tests\/Unit\/Transactions\/Deserializers\/VoteTest.php":"24fea3cae6415e250d0b509d45075b99","tests\/Unit\/Transactions\/Deserializers\/MultiPaymentTest.php":"6b8bc6e0b6851312d74b0f9e830787e2","tests\/Unit\/Transactions\/Deserializers\/IPFSTest.php":"ae652d4995ee111ba5860100fd11c917","tests\/Unit\/Transactions\/TransactionTest.php":"5354f8d92c06d7621937d7c7eae98a6c","tests\/Unit\/Transactions\/Builder\/TransferTest.php":"ededb5f59308092533a37d332f098c01","tests\/Unit\/Transactions\/Builder\/HtlcRefundTest.php":"21d08ba648e5ca9965bec5cc895e9c21","tests\/Unit\/Transactions\/Builder\/HtlcLockTest.php":"ed83c1df50835d7ef4e8fd660945fe9a","tests\/Unit\/Transactions\/Builder\/MultiSignatureRegistrationTest.php":"1e4ffffb31067c3769fdab27c72d8d18","tests\/Unit\/Transactions\/Builder\/DelegateRegistrationTest.php":"94e35ce3219e46c1d66dcfd83519b7f5","tests\/Unit\/Transactions\/Builder\/HtlcClaimTest.php":"9d85e3cc9ec3c70a5c7848d7b6faf277","tests\/Unit\/Transactions\/Builder\/DelegateResignationTest.php":"76901707d9f38b679a37407133ace1c9","tests\/Unit\/Transactions\/Builder\/SecondSignatureRegistrationTest.php":"4648b25e08c3763f29a34af431031714","tests\/Unit\/Transactions\/Builder\/VoteTest.php":"b65d1eb166e49db080afec2862cfb3fb","tests\/Unit\/Transactions\/Builder\/MultiPaymentTest.php":"83aa39eb438d10a0f923f6881e1286b1","tests\/Unit\/Transactions\/Builder\/IPFSTest.php":"18a3c51275f667d33834d651b81e2869","src\/Helpers.php":"406e67af10ba8f83dc20eb840cdb8669","src\/ByteBuffer\/Concerns\/Writes\/Integer.php":"bde87e28b98eedab7d03f5005545567b","src\/ByteBuffer\/Concerns\/Writes\/Hex.php":"872f1d7f694f06884112d9d201427e44","src\/ByteBuffer\/Concerns\/Writes\/Floats.php":"b7274ecd25eea7c145e8fd285e95358d","src\/ByteBuffer\/Concerns\/Writes\/Strings.php":"0b4bf46752c98e15343432f95d2b3c33","src\/ByteBuffer\/Concerns\/Writes\/UnsignedInteger.php":"ad3ee7c154b4fe0748b35933a785fac7","src\/ByteBuffer\/Concerns\/Transformable.php":"ba95c5e5ac572b7c7e0448e43ed9b27a","src\/ByteBuffer\/Concerns\/Writeable.php":"651c15dfb022146d91638dbcc1072197","src\/ByteBuffer\/Concerns\/Readable.php":"b7db578561d0402e6abac0765dc15715","src\/ByteBuffer\/Concerns\/Sizeable.php":"7b8664a95149592e15222c8ed38ffbd6","src\/ByteBuffer\/Concerns\/Initialisable.php":"1d40427ebf896a531eca906d04b68a9f","src\/ByteBuffer\/Concerns\/Offsetable.php":"593adce2783b7f974bf53aca3177c344","src\/ByteBuffer\/Concerns\/Positionable.php":"21f1bc9e5ae32757e035e3a7d33d87d3","src\/ByteBuffer\/Concerns\/Reads\/Integer.php":"2bdb398f7b8d1a3d74b081d50078f91f","src\/ByteBuffer\/Concerns\/Reads\/Hex.php":"42f57a6e7a0362565981c27f5f2b4e89","src\/ByteBuffer\/Concerns\/Reads\/Floats.php":"24866c6415f082abbe8e7b84d150cb8b","src\/ByteBuffer\/Concerns\/Reads\/Strings.php":"52f0b848979f7f4ac0fd429bd20518d9","src\/ByteBuffer\/Concerns\/Reads\/UnsignedInteger.php":"5e5e44b81cd96280fd4c1878b532955c","src\/ByteBuffer\/ByteBuffer.php":"fd1cc054c10dd8df7c1c8012d2f3db06","src\/ByteBuffer\/ByteOrder.php":"65bb9e577fa7b13b9a900fd3a137684b","src\/ByteBuffer\/LengthMap.php":"d0b264f13f03b8c05e062bc4de93b9d1","src\/Utils\/Message.php":"41124e185ab03dfee684134d68b1af37","src\/Utils\/Slot.php":"72bbf7f3309c1b35fe573d263a56eb75","src\/Identities\/PrivateKey.php":"14297ccc35e2f42bc23afe2e8272a40f","src\/Identities\/WIF.php":"1351c493585c7e11ab422e3a9fa89135","src\/Identities\/PublicKey.php":"557b47038465ca83074363120d39b606","src\/Identities\/Address.php":"708b0a1cb0e710df85629556f76f63bc","src\/Binary\/UnsignedInteger\/Reader.php":"c39af81995cc3e68a74e7d1155c902f3","src\/Binary\/UnsignedInteger\/Writer.php":"4b57b334e27dc1039c3a6bf86a674c31","src\/Binary\/Buffer\/Writer\/Buffer.php":"756e1a6401609140d4d5a11866c0c349","src\/Binary\/Buffer\/Writer\/Concerns\/Integer.php":"c7c45e149c2cf9e83f4059c0e0036eee","src\/Binary\/Buffer\/Writer\/Concerns\/Hex.php":"4bda0887fbdd3b12889859fbc17c8519","src\/Binary\/Buffer\/Writer\/Concerns\/UnsignedInteger.php":"4980bae47f9d4c516d886f431af9bd99","src\/Binary\/Buffer\/Writer\/Concerns\/Generic.php":"a35a59ffe67e970dd8de5b951c9554b7","src\/Binary\/Buffer\/Reader\/Buffer.php":"9ba298d595c72b3c78dd7efbade9b4bd","src\/Binary\/Buffer\/Reader\/Concerns\/Integer.php":"8201db89898e460687e403f2b31fca61","src\/Binary\/Buffer\/Reader\/Concerns\/Hex.php":"08b0855b0ae65ccf454883500f4a27d2","src\/Binary\/Buffer\/Reader\/Concerns\/UnsignedInteger.php":"3ebb1be29fa00118bec01a5b77995cbe","src\/Binary\/Integer\/Reader.php":"93175a3453a38cf7c6cf67b64ae16e46","src\/Binary\/Integer\/Writer.php":"5c3fe724a68702d4d569bb0831909310","src\/Binary\/Hex\/Reader.php":"064f535617aed54bb9005b81d0b23532","src\/Binary\/Hex\/Writer.php":"2496bf019f929cf9b86f9ae807fba98f","src\/Enums\/Types.php":"1d4a5e2a4a16a2459366a658c67f3475","src\/Enums\/TypeGroup.php":"4ca4497579cd5d5e1d9466717a7b5a11","src\/Enums\/Fees.php":"d690dc8ae31566b531de70718089fa39","src\/Networks\/Mainnet.php":"7c3d535d3ca99af860ea6ffdf5b75454","src\/Networks\/Testnet.php":"951d86285a3abaf46753cd6ae7faaf91","src\/Networks\/AbstractNetwork.php":"d9c64390bb5078612c8f68ea8c7fede3","src\/Networks\/Devnet.php":"3f7f5f9f571eca593daad45ec991f0ba","src\/Configuration\/Fee.php":"7663512e8bea6e783f32d39c958fa6ac","src\/Configuration\/Network.php":"339e6038b9b32ac6a52af7bcda424d42","src\/Transactions\/Types\/MultiPayment.php":"5b56a804ff272e3cca13bc9eae41bf7b","src\/Transactions\/Types\/Transfer.php":"57a9fb23f97b53bb1f6fb2df44f988a4","src\/Transactions\/Types\/DelegateRegistration.php":"30a9326121f2517f4002e1a4ad91a5c0","src\/Transactions\/Types\/IPFS.php":"5c3deeb61e33e87d1a19ff4e0c5044cb","src\/Transactions\/Types\/HtlcClaim.php":"8214718a175cd2cf99c05787cd3bf336","src\/Transactions\/Types\/Vote.php":"a773dce0897facc0884ebb5864d6c40b","src\/Transactions\/Types\/HtlcLock.php":"5a227f7afe08445754898c380b43f435","src\/Transactions\/Types\/MultiSignatureRegistration.php":"33a903c33cef06b30f67a4ebbee502d9","src\/Transactions\/Types\/HtlcRefund.php":"3bc7171698dbb762f9403da3a4e5a86f","src\/Transactions\/Types\/DelegateResignation.php":"1302de279d94a28a76e7c2b4faa9807e","src\/Transactions\/Types\/SecondSignatureRegistration.php":"ad8f221e8eda825959dbab65c22260d8","src\/Transactions\/Types\/Transaction.php":"d210307b9290e056251abd67fa945354","src\/Transactions\/Serializer.php":"999bcd0e994ed03bd5efc899a2b85907","src\/Transactions\/Deserializer.php":"ad7d3c4af9413268295f281c3f6124f1","src\/Transactions\/Builder\/MultiPaymentBuilder.php":"c576446fe8623da8e20ed4a3b71cfade","src\/Transactions\/Builder\/DelegateRegistrationBuilder.php":"9ec9a55d9a6cdf0a7112ce6a3f451193","src\/Transactions\/Builder\/VoteBuilder.php":"e53cd3d838f44ce7a5acb675a8cd7538","src\/Transactions\/Builder\/HtlcRefundBuilder.php":"79eca04bf8af723a0069b3154322fe68","src\/Transactions\/Builder\/SecondSignatureRegistrationBuilder.php":"8421e4135b765cef02f9ab5589026e36","src\/Transactions\/Builder\/TransferBuilder.php":"0c916c9eafa08a684f1eb4278c2d84e4","src\/Transactions\/Builder\/HtlcClaimBuilder.php":"a56483968acddeca42e20cce6ac1263c","src\/Transactions\/Builder\/MultiSignatureRegistrationBuilder.php":"526918864cac6d6833f7f8e827c8a46a","src\/Transactions\/Builder\/HtlcLockBuilder.php":"3f8bec8f46660abd4355cc65eea1ed6e","src\/Transactions\/Builder\/AbstractTransactionBuilder.php":"3ce66befc78605cda0471578cb671078","src\/Transactions\/Builder\/DelegateResignationBuilder.php":"37f80557f87f9174efa7fe7d064a2274","src\/Transactions\/Builder\/IPFSBuilder.php":"2127dd4ff096dff2cfb8ca225c6e3d7b","tests\/Unit\/Utils\/AddressTest.php":"29dc6462f3844d35818edf59ec1b59f2","src\/Utils\/Address.php":"076cce2b4a8bd66d81fb5e4a7a888b97","src\/Transactions\/Types\/ValidatorRegistration.php":"e07cda3192e464c3bec87ebd6aa8be56","src\/Transactions\/Builder\/ValidatorRegistrationBuilder.php":"56bc03dcf88ef10ae77c941e188d6ed8","tests\/Unit\/Transactions\/Builder\/ValidatorRegistrationTest.php":"d0230a3fcab100e4d30e8c11516064f1","tests\/Unit\/Transactions\/Deserializers\/ValidatorRegistrationTest.php":"b5227c16d29858234c358fbd61b42187","tests\/Unit\/Transactions\/Serializers\/ValidatorRegistrationTest.php":"9db5de66889899781bf3584322d3910d","src\/Transactions\/Types\/ValidatorResignation.php":"bac30b62170d366a666aa8e5f0c5589c","src\/Transactions\/Builder\/ValidatorResignationBuilder.php":"7052696763ba94954724e419233b8ad9","tests\/Unit\/Transactions\/Builder\/ValidatorResignationTest.php":"7991aeeb92f72edd09b5ac8cc330c274","tests\/Unit\/Transactions\/Deserializers\/ValidatorResignationTest.php":"de8a4e792845736d6e8de410bd9b9964","tests\/Unit\/Transactions\/Serializers\/ValidatorResignationTest.php":"11659801a5e118e0dc94e0ab36668be9"}} \ No newline at end of file +{"php":"8.2.20","version":"3.59.3:v3.59.3#30ba9ecc2b0e5205e578fe29973c15653d9bfd29","indent":" ","lineEnding":"\n","rules":{"array_syntax":{"syntax":"short"},"binary_operator_spaces":{"default":"single_space","operators":{"=":"align","=>":"align"}},"blank_line_after_namespace":true,"blank_line_after_opening_tag":true,"blank_line_before_statement":{"statements":["break","continue","declare","return","throw","try"]},"braces":true,"cast_spaces":true,"class_attributes_separation":{"elements":{"const":"one","method":"one","property":"one"}},"class_definition":true,"concat_space":{"spacing":"none"},"constant_case":{"case":"lower"},"declare_equal_normalize":true,"declare_strict_types":true,"echo_tag_syntax":{"format":"long"},"elseif":true,"encoding":true,"final_internal_class":true,"full_opening_tag":true,"fully_qualified_strict_types":true,"function_declaration":true,"function_typehint_space":true,"heredoc_to_nowdoc":true,"include":true,"increment_style":{"style":"post"},"indentation_type":true,"linebreak_after_opening_tag":true,"line_ending":true,"lowercase_cast":true,"lowercase_keywords":true,"lowercase_static_reference":true,"magic_method_casing":true,"magic_constant_casing":true,"method_argument_space":true,"multiline_whitespace_before_semicolons":{"strategy":"no_multi_line"},"native_function_casing":true,"new_with_braces":true,"no_alias_functions":true,"no_blank_lines_after_class_opening":true,"no_blank_lines_after_phpdoc":true,"no_closing_tag":true,"no_empty_phpdoc":true,"no_empty_statement":true,"no_extra_blank_lines":{"tokens":["extra","throw","use","use_trait"]},"no_leading_import_slash":true,"no_leading_namespace_whitespace":true,"no_mixed_echo_print":{"use":"echo"},"no_multiline_whitespace_around_double_arrow":true,"no_short_bool_cast":true,"no_singleline_whitespace_before_semicolons":true,"no_spaces_after_function_name":true,"no_spaces_around_offset":{"positions":["inside"]},"no_spaces_inside_parenthesis":true,"no_trailing_comma_in_list_call":true,"no_trailing_comma_in_singleline_array":true,"no_trailing_whitespace":true,"no_trailing_whitespace_in_comment":true,"no_unneeded_control_parentheses":{"statements":["break","clone","continue","echo_print","return","switch_case","yield"]},"no_unreachable_default_argument_value":true,"no_unused_imports":true,"no_useless_else":true,"no_useless_return":true,"no_whitespace_before_comma_in_array":true,"no_whitespace_in_blank_line":true,"normalize_index_brace":true,"not_operator_with_successor_space":true,"object_operator_without_whitespace":true,"ordered_class_elements":true,"ordered_imports":{"sort_algorithm":"alpha"},"php_unit_strict":true,"php_unit_test_class_requires_covers":true,"phpdoc_add_missing_param_annotation":true,"phpdoc_indent":true,"phpdoc_inline_tag_normalizer":true,"phpdoc_no_access":true,"phpdoc_no_package":true,"phpdoc_no_useless_inheritdoc":true,"phpdoc_order":true,"phpdoc_scalar":true,"phpdoc_single_line_var_spacing":true,"phpdoc_summary":true,"phpdoc_to_comment":{"ignored_tags":["var"]},"phpdoc_trim":true,"phpdoc_types":true,"phpdoc_var_without_name":true,"psr_autoloading":true,"self_accessor":true,"semicolon_after_instruction":true,"short_scalar_cast":true,"simplified_null_return":true,"single_blank_line_at_eof":true,"single_blank_line_before_namespace":true,"single_class_element_per_statement":{"elements":["const","property"]},"single_import_per_statement":true,"single_line_after_imports":true,"single_line_comment_style":{"comment_types":["hash"]},"single_quote":true,"single_trait_insert_per_statement":true,"space_after_semicolon":true,"standardize_not_equals":true,"strict_comparison":true,"strict_param":true,"switch_case_semicolon_to_colon":true,"switch_case_space":true,"ternary_operator_spaces":true,"trailing_comma_in_multiline":{"elements":["arrays"]},"trim_array_spaces":true,"unary_operator_spaces":true,"visibility_required":{"elements":["property","method","const"]},"whitespace_after_comma_in_array":true},"hashes":{"tests\/Unit\/Configuration\/NetworkTest.php":"a0c93282667a0db8c7746e105a3a23f5","tests\/Unit\/Configuration\/FeeTest.php":"bcc4844a5eaa86d2423b87d9413e07f3","tests\/Unit\/ByteBuffer\/LengthMapTest.php":"566eadccee85259d94a620578a542dbf","tests\/Unit\/ByteBuffer\/ByteBufferTest.php":"3f2ccca6307fb3dfb53c592d84195d14","tests\/Unit\/ByteBuffer\/Concerns\/InitialisableTest.php":"3670bb0159fa8cd97075fe71489ab1d9","tests\/Unit\/ByteBuffer\/Concerns\/PositionableTest.php":"8ef867799d158bcbe44b2bee3ce36a83","tests\/Unit\/ByteBuffer\/Concerns\/Writes\/FloatsTest.php":"9a32203626cc79e050f42c14fa3e6ba7","tests\/Unit\/ByteBuffer\/Concerns\/Writes\/IntegerTest.php":"849b9922e0623d0042dd7c1adedb3da3","tests\/Unit\/ByteBuffer\/Concerns\/Writes\/UnsignedIntegerTest.php":"f3b02a10025b3544d1b825fbd2692b32","tests\/Unit\/ByteBuffer\/Concerns\/Writes\/StringsTest.php":"da21b61dca9950da63270ab8993ae014","tests\/Unit\/ByteBuffer\/Concerns\/Writes\/HexTest.php":"a5296fa0dc0e72b7e3cdce32b126b84e","tests\/Unit\/ByteBuffer\/Concerns\/Reads\/FloatsTest.php":"291829435c86a2c093fbb886a56a2b88","tests\/Unit\/ByteBuffer\/Concerns\/Reads\/IntegerTest.php":"783a66094d698d93bd00f59236f7a093","tests\/Unit\/ByteBuffer\/Concerns\/Reads\/UnsignedIntegerTest.php":"bc1ba970efad3acc0f1d57667efa0402","tests\/Unit\/ByteBuffer\/Concerns\/Reads\/StringsTest.php":"263c9acf17a9a1bf5fa32ab1eeae0b29","tests\/Unit\/ByteBuffer\/Concerns\/Reads\/HexTest.php":"327d716d6c6da6da3c490fa293afd49e","tests\/Unit\/ByteBuffer\/Concerns\/SizeableTest.php":"cbd2994ce7be1ef9c086291483797ab5","tests\/Unit\/ByteBuffer\/Concerns\/OffsetableTest.php":"a62d22fff1ff4e5f350d584f1ddf60cd","tests\/Unit\/ByteBuffer\/Concerns\/TransformableTest.php":"64f87f6a19e09d5fc5abe196c1910dff","tests\/Unit\/Utils\/AddressTest.php":"29dc6462f3844d35818edf59ec1b59f2","tests\/Unit\/Utils\/SlotTest.php":"0f9639a94ca904aab58de8e2bee771e7","tests\/Unit\/Utils\/MessageTest.php":"f53f55fb0cc3b34ecba4e36f11ccad3a","tests\/Unit\/Networks\/TestnetTest.php":"ae92bf475035ad441956192704e33729","tests\/Unit\/Networks\/DevnetTest.php":"55731cf7389728d924c87d3bf591318a","tests\/Unit\/Networks\/NetworkTestCase.php":"080da14e3d30370dab0e5c325e883b1e","tests\/Unit\/Networks\/MainnetTest.php":"ef8ae566506f3d797fa9f6a117acc844","tests\/Unit\/Transactions\/Deserializers\/MultiSignatureRegistrationTest.php":"4d554fe98a83156f2a508967ccf2f219","tests\/Unit\/Transactions\/Deserializers\/MultiPaymentTest.php":"6b8bc6e0b6851312d74b0f9e830787e2","tests\/Unit\/Transactions\/Deserializers\/TransferTest.php":"2d2ec72619d1c85d50e5083ee03e3d47","tests\/Unit\/Transactions\/Deserializers\/ValidatorResignationTest.php":"de8a4e792845736d6e8de410bd9b9964","tests\/Unit\/Transactions\/Deserializers\/UsernameResignationTest.php":"d6756d00fcdbfdf6dff66231e7c13963","tests\/Unit\/Transactions\/Deserializers\/UsernameRegistrationTest.php":"bcce6c8b8f723399cf0bbc3694b20cb0","tests\/Unit\/Transactions\/Deserializers\/ValidatorRegistrationTest.php":"b5227c16d29858234c358fbd61b42187","tests\/Unit\/Transactions\/Deserializers\/VoteTest.php":"24fea3cae6415e250d0b509d45075b99","tests\/Unit\/Transactions\/TransactionTest.php":"5354f8d92c06d7621937d7c7eae98a6c","tests\/Unit\/Transactions\/Serializers\/MultiSignatureRegistrationTest.php":"3f373084bd7e0a66d9296215e55dc22b","tests\/Unit\/Transactions\/Serializers\/MultiPaymentTest.php":"74f8fb7ad9eaa7dd641a94662d33e3f7","tests\/Unit\/Transactions\/Serializers\/TransferTest.php":"7c894b0020554cccbeb2271cc1983d07","tests\/Unit\/Transactions\/Serializers\/ValidatorResignationTest.php":"11659801a5e118e0dc94e0ab36668be9","tests\/Unit\/Transactions\/Serializers\/UsernameResignationTest.php":"a111ef5724a5e2eab34ee2a6ebfe1b14","tests\/Unit\/Transactions\/Serializers\/UsernameRegistrationTest.php":"9ffd45d88dae8572ee8c4e449c8f5f2f","tests\/Unit\/Transactions\/Serializers\/ValidatorRegistrationTest.php":"9db5de66889899781bf3584322d3910d","tests\/Unit\/Transactions\/Serializers\/VoteTest.php":"83244de955fdf5281108357580ee88ab","tests\/Unit\/Transactions\/Builder\/MultiSignatureRegistrationTest.php":"1e4ffffb31067c3769fdab27c72d8d18","tests\/Unit\/Transactions\/Builder\/MultiPaymentTest.php":"83aa39eb438d10a0f923f6881e1286b1","tests\/Unit\/Transactions\/Builder\/TransferTest.php":"ededb5f59308092533a37d332f098c01","tests\/Unit\/Transactions\/Builder\/ValidatorResignationTest.php":"7991aeeb92f72edd09b5ac8cc330c274","tests\/Unit\/Transactions\/Builder\/UsernameResignationTest.php":"b86e7bca66238c51d170e1102d3f6344","tests\/Unit\/Transactions\/Builder\/UsernameRegistrationTest.php":"febb6d64811befb772db11131e011324","tests\/Unit\/Transactions\/Builder\/ValidatorRegistrationTest.php":"d0230a3fcab100e4d30e8c11516064f1","tests\/Unit\/Transactions\/Builder\/VoteTest.php":"b65d1eb166e49db080afec2862cfb3fb","tests\/Unit\/Identities\/PrivateKeyTest.php":"03f1961d973ed6b8c692b962da4aa32a","tests\/Unit\/Identities\/AddressTest.php":"a4ab06676fde6ee32c0edc8f9ef9589e","tests\/Unit\/Identities\/PublicKeyTest.php":"191c8e3d703ed822b6023cd79bbada70","tests\/Unit\/Identities\/WIFTest.php":"0d0ecbed55770bfcc522ff72bfcb1706","tests\/Analysis\/AnalysisTest.php":"cbbd5c2285fef22e0e0ba587bf532921","tests\/Helpers.php":"ead3b754e9d1064afb42b4ba295f7801","tests\/Pest.php":"e94ffd859b54a678b7ea5aa68876c925","tests\/TestCase.php":"3c90f64bca41edc46109bf117931ff53","tests\/Concerns\/Fixtures.php":"c9de325db453e274d1080579d184a62c","tests\/Concerns\/Deserialize.php":"b3b4f195433141dd1777f1c06f609369","tests\/Concerns\/Serialize.php":"09b88a0cfddcb168234433ed51e49eff","src\/Configuration\/Fee.php":"87a630a16fc6a3c84498ac70ba597b16","src\/Configuration\/Network.php":"339e6038b9b32ac6a52af7bcda424d42","src\/ByteBuffer\/ByteOrder.php":"65bb9e577fa7b13b9a900fd3a137684b","src\/ByteBuffer\/LengthMap.php":"d0b264f13f03b8c05e062bc4de93b9d1","src\/ByteBuffer\/ByteBuffer.php":"fd1cc054c10dd8df7c1c8012d2f3db06","src\/ByteBuffer\/Concerns\/Positionable.php":"21f1bc9e5ae32757e035e3a7d33d87d3","src\/ByteBuffer\/Concerns\/Initialisable.php":"1d40427ebf896a531eca906d04b68a9f","src\/ByteBuffer\/Concerns\/Writes\/Integer.php":"bde87e28b98eedab7d03f5005545567b","src\/ByteBuffer\/Concerns\/Writes\/Hex.php":"872f1d7f694f06884112d9d201427e44","src\/ByteBuffer\/Concerns\/Writes\/Floats.php":"b7274ecd25eea7c145e8fd285e95358d","src\/ByteBuffer\/Concerns\/Writes\/Strings.php":"0b4bf46752c98e15343432f95d2b3c33","src\/ByteBuffer\/Concerns\/Writes\/UnsignedInteger.php":"ad3ee7c154b4fe0748b35933a785fac7","src\/ByteBuffer\/Concerns\/Reads\/Integer.php":"2bdb398f7b8d1a3d74b081d50078f91f","src\/ByteBuffer\/Concerns\/Reads\/Hex.php":"42f57a6e7a0362565981c27f5f2b4e89","src\/ByteBuffer\/Concerns\/Reads\/Floats.php":"24866c6415f082abbe8e7b84d150cb8b","src\/ByteBuffer\/Concerns\/Reads\/Strings.php":"52f0b848979f7f4ac0fd429bd20518d9","src\/ByteBuffer\/Concerns\/Reads\/UnsignedInteger.php":"5e5e44b81cd96280fd4c1878b532955c","src\/ByteBuffer\/Concerns\/Sizeable.php":"7b8664a95149592e15222c8ed38ffbd6","src\/ByteBuffer\/Concerns\/Transformable.php":"ba95c5e5ac572b7c7e0448e43ed9b27a","src\/ByteBuffer\/Concerns\/Writeable.php":"651c15dfb022146d91638dbcc1072197","src\/ByteBuffer\/Concerns\/Readable.php":"b7db578561d0402e6abac0765dc15715","src\/ByteBuffer\/Concerns\/Offsetable.php":"593adce2783b7f974bf53aca3177c344","src\/Enums\/Fees.php":"cdb346bd571ebf9037d11b1d364a74ce","src\/Enums\/TypeGroup.php":"4ca4497579cd5d5e1d9466717a7b5a11","src\/Enums\/Types.php":"167047c895f020ee9a9c79a40bbaa4cd","src\/Utils\/Address.php":"076cce2b4a8bd66d81fb5e4a7a888b97","src\/Utils\/Slot.php":"72bbf7f3309c1b35fe573d263a56eb75","src\/Utils\/Message.php":"41124e185ab03dfee684134d68b1af37","src\/Networks\/Mainnet.php":"7c3d535d3ca99af860ea6ffdf5b75454","src\/Networks\/Testnet.php":"951d86285a3abaf46753cd6ae7faaf91","src\/Networks\/AbstractNetwork.php":"d9c64390bb5078612c8f68ea8c7fede3","src\/Networks\/Devnet.php":"3f7f5f9f571eca593daad45ec991f0ba","src\/Transactions\/Serializer.php":"999bcd0e994ed03bd5efc899a2b85907","src\/Transactions\/Types\/Transaction.php":"d210307b9290e056251abd67fa945354","src\/Transactions\/Types\/HtlcClaim.php":"8214718a175cd2cf99c05787cd3bf336","src\/Transactions\/Types\/ValidatorResignation.php":"bac30b62170d366a666aa8e5f0c5589c","src\/Transactions\/Types\/Vote.php":"a773dce0897facc0884ebb5864d6c40b","src\/Transactions\/Types\/MultiPayment.php":"5b56a804ff272e3cca13bc9eae41bf7b","src\/Transactions\/Types\/SecondSignatureRegistration.php":"ad8f221e8eda825959dbab65c22260d8","src\/Transactions\/Types\/MultiSignatureRegistration.php":"33a903c33cef06b30f67a4ebbee502d9","src\/Transactions\/Types\/HtlcLock.php":"5a227f7afe08445754898c380b43f435","src\/Transactions\/Types\/ValidatorRegistration.php":"e07cda3192e464c3bec87ebd6aa8be56","src\/Transactions\/Types\/HtlcRefund.php":"3bc7171698dbb762f9403da3a4e5a86f","src\/Transactions\/Types\/Transfer.php":"57a9fb23f97b53bb1f6fb2df44f988a4","src\/Transactions\/Types\/IPFS.php":"5c3deeb61e33e87d1a19ff4e0c5044cb","src\/Transactions\/Types\/UsernameRegistration.php":"01392ec4f48086e4b3ae8629740b7966","src\/Transactions\/Types\/UsernameResignation.php":"77dbcf9cf72da5ae16f99826c493dcc3","src\/Transactions\/Deserializer.php":"edae9904e20caeb46476c910edafe163","src\/Transactions\/Builder\/UsernameResignationBuilder.php":"64c1fdaecaedaa91e26905896e460298","src\/Transactions\/Builder\/MultiSignatureRegistrationBuilder.php":"526918864cac6d6833f7f8e827c8a46a","src\/Transactions\/Builder\/TransferBuilder.php":"0c916c9eafa08a684f1eb4278c2d84e4","src\/Transactions\/Builder\/ValidatorRegistrationBuilder.php":"56bc03dcf88ef10ae77c941e188d6ed8","src\/Transactions\/Builder\/VoteBuilder.php":"e53cd3d838f44ce7a5acb675a8cd7538","src\/Transactions\/Builder\/HtlcLockBuilder.php":"ed9ac4b4955862bf31da2b1f10e529d7","src\/Transactions\/Builder\/AbstractTransactionBuilder.php":"3ce66befc78605cda0471578cb671078","src\/Transactions\/Builder\/HtlcRefundBuilder.php":"79eca04bf8af723a0069b3154322fe68","src\/Transactions\/Builder\/SecondSignatureRegistrationBuilder.php":"8421e4135b765cef02f9ab5589026e36","src\/Transactions\/Builder\/MultiPaymentBuilder.php":"c576446fe8623da8e20ed4a3b71cfade","src\/Transactions\/Builder\/IPFSBuilder.php":"2127dd4ff096dff2cfb8ca225c6e3d7b","src\/Transactions\/Builder\/UsernameRegistrationBuilder.php":"2ae9a4cfa2952c4b2e443b7c351fbf2a","src\/Transactions\/Builder\/ValidatorResignationBuilder.php":"7052696763ba94954724e419233b8ad9","src\/Transactions\/Builder\/HtlcClaimBuilder.php":"a56483968acddeca42e20cce6ac1263c","src\/Binary\/Hex\/Writer.php":"2496bf019f929cf9b86f9ae807fba98f","src\/Binary\/Hex\/Reader.php":"064f535617aed54bb9005b81d0b23532","src\/Binary\/UnsignedInteger\/Writer.php":"4b57b334e27dc1039c3a6bf86a674c31","src\/Binary\/UnsignedInteger\/Reader.php":"c39af81995cc3e68a74e7d1155c902f3","src\/Binary\/Integer\/Writer.php":"5c3fe724a68702d4d569bb0831909310","src\/Binary\/Integer\/Reader.php":"93175a3453a38cf7c6cf67b64ae16e46","src\/Binary\/Buffer\/Reader\/Buffer.php":"9ba298d595c72b3c78dd7efbade9b4bd","src\/Binary\/Buffer\/Reader\/Concerns\/Integer.php":"8201db89898e460687e403f2b31fca61","src\/Binary\/Buffer\/Reader\/Concerns\/Hex.php":"08b0855b0ae65ccf454883500f4a27d2","src\/Binary\/Buffer\/Reader\/Concerns\/UnsignedInteger.php":"3ebb1be29fa00118bec01a5b77995cbe","src\/Binary\/Buffer\/Writer\/Buffer.php":"756e1a6401609140d4d5a11866c0c349","src\/Binary\/Buffer\/Writer\/Concerns\/Integer.php":"c7c45e149c2cf9e83f4059c0e0036eee","src\/Binary\/Buffer\/Writer\/Concerns\/Hex.php":"4bda0887fbdd3b12889859fbc17c8519","src\/Binary\/Buffer\/Writer\/Concerns\/Generic.php":"a35a59ffe67e970dd8de5b951c9554b7","src\/Binary\/Buffer\/Writer\/Concerns\/UnsignedInteger.php":"4980bae47f9d4c516d886f431af9bd99","src\/Identities\/Address.php":"708b0a1cb0e710df85629556f76f63bc","src\/Identities\/PublicKey.php":"557b47038465ca83074363120d39b606","src\/Identities\/WIF.php":"1351c493585c7e11ab422e3a9fa89135","src\/Identities\/PrivateKey.php":"14297ccc35e2f42bc23afe2e8272a40f","src\/Helpers.php":"406e67af10ba8f83dc20eb840cdb8669"}} \ No newline at end of file diff --git a/src/Configuration/Fee.php b/src/Configuration/Fee.php index 568983e2..7dab0f7d 100644 --- a/src/Configuration/Fee.php +++ b/src/Configuration/Fee.php @@ -38,7 +38,7 @@ class Fee Types::MULTI_PAYMENT => Fees::MULTI_PAYMENT, Types::VALIDATOR_RESIGNATION => Fees::VALIDATOR_RESIGNATION, Types::USERNAME_REGISTRATION => Fees::USERNAME_REGISTRATION, - Types::HTLC_CLAIM => Fees::HTLC_CLAIM, + Types::USERNAME_RESIGNATION => Fees::USERNAME_RESIGNATION, Types::HTLC_REFUND => Fees::HTLC_REFUND, ]; diff --git a/src/Enums/Fees.php b/src/Enums/Fees.php index c6ef2202..553365eb 100644 --- a/src/Enums/Fees.php +++ b/src/Enums/Fees.php @@ -38,7 +38,7 @@ class Fees public const USERNAME_REGISTRATION = '2500000000'; - public const HTLC_CLAIM = '0'; + public const USERNAME_RESIGNATION = '2500000000'; public const HTLC_REFUND = '0'; } diff --git a/src/Enums/Types.php b/src/Enums/Types.php index ad2c9d16..4c60b833 100644 --- a/src/Enums/Types.php +++ b/src/Enums/Types.php @@ -38,7 +38,7 @@ class Types public const USERNAME_REGISTRATION = 8; - public const HTLC_CLAIM = 9; + public const USERNAME_RESIGNATION = 9; public const HTLC_REFUND = 10; } diff --git a/src/Transactions/Builder/UsernameResignationBuilder.php b/src/Transactions/Builder/UsernameResignationBuilder.php new file mode 100644 index 00000000..33ef7e7a --- /dev/null +++ b/src/Transactions/Builder/UsernameResignationBuilder.php @@ -0,0 +1,48 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace ArkEcosystem\Crypto\Transactions\Builder; + +use ArkEcosystem\Crypto\Transactions\Types\UsernameResignation; + +/** + * This is the username resignation transaction class. + */ +class UsernameResignationBuilder extends AbstractTransactionBuilder +{ + /** + * Create a new username resignation transaction instance. + */ + public function __construct() + { + parent::__construct(); + } + + /** + * {@inheritdoc} + */ + protected function getType(): int + { + return \ArkEcosystem\Crypto\Enums\Types::USERNAME_RESIGNATION; + } + + protected function getTypeGroup(): int + { + return \ArkEcosystem\Crypto\Enums\TypeGroup::CORE; + } + + protected function getTransactionInstance(): object + { + return new UsernameResignation(); + } +} diff --git a/src/Transactions/Deserializer.php b/src/Transactions/Deserializer.php index fe3b3839..ce9222e4 100644 --- a/src/Transactions/Deserializer.php +++ b/src/Transactions/Deserializer.php @@ -41,6 +41,7 @@ class Deserializer Types\MultiPayment::class, Types\ValidatorResignation::class, Types\UsernameRegistration::class, + Types\UsernameResignation::class, ]; /** diff --git a/src/Transactions/Types/UsernameResignation.php b/src/Transactions/Types/UsernameResignation.php new file mode 100644 index 00000000..fbf9d19c --- /dev/null +++ b/src/Transactions/Types/UsernameResignation.php @@ -0,0 +1,31 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace ArkEcosystem\Crypto\Transactions\Types; + +use ArkEcosystem\Crypto\ByteBuffer\ByteBuffer; + +/** + * This is the serializer class. + */ +class UsernameResignation extends Transaction +{ + public function serialize(array $options = []): ByteBuffer + { + return ByteBuffer::new(0); + } + + public function deserialize(ByteBuffer $buffer): void + { + } +} diff --git a/tests/Concerns/Serialize.php b/tests/Concerns/Serialize.php index abfaffc2..051e34e4 100644 --- a/tests/Concerns/Serialize.php +++ b/tests/Concerns/Serialize.php @@ -20,6 +20,7 @@ use ArkEcosystem\Crypto\Transactions\Types\SecondSignatureRegistration; use ArkEcosystem\Crypto\Transactions\Types\Transfer; use ArkEcosystem\Crypto\Transactions\Types\UsernameRegistration; +use ArkEcosystem\Crypto\Transactions\Types\UsernameResignation; use ArkEcosystem\Crypto\Transactions\Types\ValidatorRegistration; use ArkEcosystem\Crypto\Transactions\Types\ValidatorResignation; use ArkEcosystem\Crypto\Transactions\Types\Vote; @@ -36,6 +37,7 @@ trait Serialize MultiPayment::class, ValidatorResignation::class, UsernameRegistration::class, + UsernameResignation::class, ]; protected function assertSerialized(array $fixture): void diff --git a/tests/Unit/Transactions/Builder/UsernameResignationTest.php b/tests/Unit/Transactions/Builder/UsernameResignationTest.php new file mode 100644 index 00000000..79bee431 --- /dev/null +++ b/tests/Unit/Transactions/Builder/UsernameResignationTest.php @@ -0,0 +1,51 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace ArkEcosystem\Tests\Crypto\Unit\Transactions\Builder; + +use ArkEcosystem\Crypto\Transactions\Builder\UsernameResignationBuilder; +use ArkEcosystem\Crypto\Transactions\Serializer; +use ArkEcosystem\Tests\Crypto\TestCase; + +/** + * This is the username resignation builder test class. + * + * @covers \ArkEcosystem\Crypto\Transactions\Builder\UsernameResignationBuilder + */ +class UsernameResignationTest extends TestCase +{ + /** @test */ + public function it_should_sign_it_with_a_passphrase() + { + $transaction = UsernameResignationBuilder::new() + ->sign($this->passphrase); + + $this->assertTrue($transaction->verify()); + } + + /** @test */ + public function it_should_match_fixture_passphrase() + { + $fixture = $this->getTransactionFixture('username_resignation', 'username-resignation-sign'); + + $builder = UsernameResignationBuilder::new() + ->withFee($fixture['data']['fee']) + ->withNonce($fixture['data']['nonce']) + ->withNetwork($fixture['data']['network']) + ->sign($this->passphrase); + + $this->assertTrue($builder->verify()); + $this->assertSameSerialization($fixture['serialized'], Serializer::new($builder->transaction)->serialize()->getHex()); + $this->assertSameTransactions($fixture, $builder->transaction->data); + } +} diff --git a/tests/Unit/Transactions/Deserializers/UsernameResignationTest.php b/tests/Unit/Transactions/Deserializers/UsernameResignationTest.php new file mode 100644 index 00000000..50c3fb2f --- /dev/null +++ b/tests/Unit/Transactions/Deserializers/UsernameResignationTest.php @@ -0,0 +1,56 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace ArkEcosystem\Tests\Crypto\Unit\Transactions\Deserializers; + +use ArkEcosystem\Crypto\Transactions\Deserializer; +use ArkEcosystem\Crypto\Transactions\Types\UsernameResignation; +use ArkEcosystem\Tests\Crypto\TestCase; + +/** + * This is the delegate registration deserializer test class. + * + * @covers \ArkEcosystem\Crypto\Transactions\Types\UsernameResignation + */ +class UsernameResignationTest extends TestCase +{ + /** @test */ + public function it_should_deserialize_the_transaction_signed_with_a_passphrase() + { + $fixture = $this->getTransactionFixture('username_resignation', 'username-resignation-sign'); + + $this->assertTransaction($fixture); + } + + private function assertTransaction(array $fixture): UsernameResignation + { + $actual = $this->assertDeserialized($fixture, [ + 'version', + 'network', + 'type', + 'typeGroup', + 'nonce', + 'senderPublicKey', + 'fee', + 'asset', + 'signature', + 'secondSignature', + 'amount', + 'id', + ]); + + $this->assertTrue($actual->verify()); + + return $actual; + } +} diff --git a/tests/Unit/Transactions/Serializers/UsernameResignationTest.php b/tests/Unit/Transactions/Serializers/UsernameResignationTest.php new file mode 100644 index 00000000..2b1a472f --- /dev/null +++ b/tests/Unit/Transactions/Serializers/UsernameResignationTest.php @@ -0,0 +1,31 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace ArkEcosystem\Tests\Crypto\Unit\Transactions\Serializers; + +use ArkEcosystem\Crypto\Transactions\Serializer; +use ArkEcosystem\Tests\Crypto\TestCase; + +/** + * This is the username resignation serializer test class. + * + * @covers \ArkEcosystem\Crypto\Transactions\Types\UsernameResignation + */ +class UsernameResignationTest extends TestCase +{ + /** @test */ + public function it_should_serialize_the_transaction_with_a_passphrase() + { + $this->assertSerialized($this->getTransactionFixture('username_resignation', 'username-resignation-sign')); + } +} diff --git a/tests/fixtures/transactions/username_resignation/username-resignation-sign.json b/tests/fixtures/transactions/username_resignation/username-resignation-sign.json new file mode 100644 index 00000000..9209da01 --- /dev/null +++ b/tests/fixtures/transactions/username_resignation/username-resignation-sign.json @@ -0,0 +1,15 @@ +{ + "data": { + "version": 1, + "network": 30, + "typeGroup": 1, + "type": 9, + "nonce": "4", + "senderPublicKey": "023efc1da7f315f3c533a4080e491f32cd4219731cef008976c3876539e1f192d3", + "fee": "2500000000", + "amount": "0", + "signature": "72b0322b72019f688fc21f367d68b38828c6e3966e52b3fd46f0813cc7c2cdfd58097c4eef8b52896aba1300098e20a38659529b45db9dfca7aa23d560457769", + "id": "1f90e26793dd55b6b2464002dc537882df94199249ba0bd07fcb4512851ed22b" + }, + "serialized": "ff011e0100000009000400000000000000023efc1da7f315f3c533a4080e491f32cd4219731cef008976c3876539e1f192d300f90295000000000072b0322b72019f688fc21f367d68b38828c6e3966e52b3fd46f0813cc7c2cdfd58097c4eef8b52896aba1300098e20a38659529b45db9dfca7aa23d560457769" +} From 406d13e9c659abd9763bac3e0b0ad5cb775af448 Mon Sep 17 00:00:00 2001 From: alfonsobries Date: Thu, 25 Jul 2024 17:43:39 +0000 Subject: [PATCH 3/3] style: resolve style guide violations --- .php-cs-fixer.cache | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.php-cs-fixer.cache b/.php-cs-fixer.cache index 29131ab4..9db1e153 100644 --- a/.php-cs-fixer.cache +++ b/.php-cs-fixer.cache @@ -1 +1 @@ -{"php":"8.2.20","version":"3.59.3:v3.59.3#30ba9ecc2b0e5205e578fe29973c15653d9bfd29","indent":" ","lineEnding":"\n","rules":{"array_syntax":{"syntax":"short"},"binary_operator_spaces":{"default":"single_space","operators":{"=":"align","=>":"align"}},"blank_line_after_namespace":true,"blank_line_after_opening_tag":true,"blank_line_before_statement":{"statements":["break","continue","declare","return","throw","try"]},"braces":true,"cast_spaces":true,"class_attributes_separation":{"elements":{"const":"one","method":"one","property":"one"}},"class_definition":true,"concat_space":{"spacing":"none"},"constant_case":{"case":"lower"},"declare_equal_normalize":true,"declare_strict_types":true,"echo_tag_syntax":{"format":"long"},"elseif":true,"encoding":true,"final_internal_class":true,"full_opening_tag":true,"fully_qualified_strict_types":true,"function_declaration":true,"function_typehint_space":true,"heredoc_to_nowdoc":true,"include":true,"increment_style":{"style":"post"},"indentation_type":true,"linebreak_after_opening_tag":true,"line_ending":true,"lowercase_cast":true,"lowercase_keywords":true,"lowercase_static_reference":true,"magic_method_casing":true,"magic_constant_casing":true,"method_argument_space":true,"multiline_whitespace_before_semicolons":{"strategy":"no_multi_line"},"native_function_casing":true,"new_with_braces":true,"no_alias_functions":true,"no_blank_lines_after_class_opening":true,"no_blank_lines_after_phpdoc":true,"no_closing_tag":true,"no_empty_phpdoc":true,"no_empty_statement":true,"no_extra_blank_lines":{"tokens":["extra","throw","use","use_trait"]},"no_leading_import_slash":true,"no_leading_namespace_whitespace":true,"no_mixed_echo_print":{"use":"echo"},"no_multiline_whitespace_around_double_arrow":true,"no_short_bool_cast":true,"no_singleline_whitespace_before_semicolons":true,"no_spaces_after_function_name":true,"no_spaces_around_offset":{"positions":["inside"]},"no_spaces_inside_parenthesis":true,"no_trailing_comma_in_list_call":true,"no_trailing_comma_in_singleline_array":true,"no_trailing_whitespace":true,"no_trailing_whitespace_in_comment":true,"no_unneeded_control_parentheses":{"statements":["break","clone","continue","echo_print","return","switch_case","yield"]},"no_unreachable_default_argument_value":true,"no_unused_imports":true,"no_useless_else":true,"no_useless_return":true,"no_whitespace_before_comma_in_array":true,"no_whitespace_in_blank_line":true,"normalize_index_brace":true,"not_operator_with_successor_space":true,"object_operator_without_whitespace":true,"ordered_class_elements":true,"ordered_imports":{"sort_algorithm":"alpha"},"php_unit_strict":true,"php_unit_test_class_requires_covers":true,"phpdoc_add_missing_param_annotation":true,"phpdoc_indent":true,"phpdoc_inline_tag_normalizer":true,"phpdoc_no_access":true,"phpdoc_no_package":true,"phpdoc_no_useless_inheritdoc":true,"phpdoc_order":true,"phpdoc_scalar":true,"phpdoc_single_line_var_spacing":true,"phpdoc_summary":true,"phpdoc_to_comment":{"ignored_tags":["var"]},"phpdoc_trim":true,"phpdoc_types":true,"phpdoc_var_without_name":true,"psr_autoloading":true,"self_accessor":true,"semicolon_after_instruction":true,"short_scalar_cast":true,"simplified_null_return":true,"single_blank_line_at_eof":true,"single_blank_line_before_namespace":true,"single_class_element_per_statement":{"elements":["const","property"]},"single_import_per_statement":true,"single_line_after_imports":true,"single_line_comment_style":{"comment_types":["hash"]},"single_quote":true,"single_trait_insert_per_statement":true,"space_after_semicolon":true,"standardize_not_equals":true,"strict_comparison":true,"strict_param":true,"switch_case_semicolon_to_colon":true,"switch_case_space":true,"ternary_operator_spaces":true,"trailing_comma_in_multiline":{"elements":["arrays"]},"trim_array_spaces":true,"unary_operator_spaces":true,"visibility_required":{"elements":["property","method","const"]},"whitespace_after_comma_in_array":true},"hashes":{"tests\/Unit\/Configuration\/NetworkTest.php":"a0c93282667a0db8c7746e105a3a23f5","tests\/Unit\/Configuration\/FeeTest.php":"bcc4844a5eaa86d2423b87d9413e07f3","tests\/Unit\/ByteBuffer\/LengthMapTest.php":"566eadccee85259d94a620578a542dbf","tests\/Unit\/ByteBuffer\/ByteBufferTest.php":"3f2ccca6307fb3dfb53c592d84195d14","tests\/Unit\/ByteBuffer\/Concerns\/InitialisableTest.php":"3670bb0159fa8cd97075fe71489ab1d9","tests\/Unit\/ByteBuffer\/Concerns\/PositionableTest.php":"8ef867799d158bcbe44b2bee3ce36a83","tests\/Unit\/ByteBuffer\/Concerns\/Writes\/FloatsTest.php":"9a32203626cc79e050f42c14fa3e6ba7","tests\/Unit\/ByteBuffer\/Concerns\/Writes\/IntegerTest.php":"849b9922e0623d0042dd7c1adedb3da3","tests\/Unit\/ByteBuffer\/Concerns\/Writes\/UnsignedIntegerTest.php":"f3b02a10025b3544d1b825fbd2692b32","tests\/Unit\/ByteBuffer\/Concerns\/Writes\/StringsTest.php":"da21b61dca9950da63270ab8993ae014","tests\/Unit\/ByteBuffer\/Concerns\/Writes\/HexTest.php":"a5296fa0dc0e72b7e3cdce32b126b84e","tests\/Unit\/ByteBuffer\/Concerns\/Reads\/FloatsTest.php":"291829435c86a2c093fbb886a56a2b88","tests\/Unit\/ByteBuffer\/Concerns\/Reads\/IntegerTest.php":"783a66094d698d93bd00f59236f7a093","tests\/Unit\/ByteBuffer\/Concerns\/Reads\/UnsignedIntegerTest.php":"bc1ba970efad3acc0f1d57667efa0402","tests\/Unit\/ByteBuffer\/Concerns\/Reads\/StringsTest.php":"263c9acf17a9a1bf5fa32ab1eeae0b29","tests\/Unit\/ByteBuffer\/Concerns\/Reads\/HexTest.php":"327d716d6c6da6da3c490fa293afd49e","tests\/Unit\/ByteBuffer\/Concerns\/SizeableTest.php":"cbd2994ce7be1ef9c086291483797ab5","tests\/Unit\/ByteBuffer\/Concerns\/OffsetableTest.php":"a62d22fff1ff4e5f350d584f1ddf60cd","tests\/Unit\/ByteBuffer\/Concerns\/TransformableTest.php":"64f87f6a19e09d5fc5abe196c1910dff","tests\/Unit\/Utils\/AddressTest.php":"29dc6462f3844d35818edf59ec1b59f2","tests\/Unit\/Utils\/SlotTest.php":"0f9639a94ca904aab58de8e2bee771e7","tests\/Unit\/Utils\/MessageTest.php":"f53f55fb0cc3b34ecba4e36f11ccad3a","tests\/Unit\/Networks\/TestnetTest.php":"ae92bf475035ad441956192704e33729","tests\/Unit\/Networks\/DevnetTest.php":"55731cf7389728d924c87d3bf591318a","tests\/Unit\/Networks\/NetworkTestCase.php":"080da14e3d30370dab0e5c325e883b1e","tests\/Unit\/Networks\/MainnetTest.php":"ef8ae566506f3d797fa9f6a117acc844","tests\/Unit\/Transactions\/Deserializers\/MultiSignatureRegistrationTest.php":"4d554fe98a83156f2a508967ccf2f219","tests\/Unit\/Transactions\/Deserializers\/MultiPaymentTest.php":"6b8bc6e0b6851312d74b0f9e830787e2","tests\/Unit\/Transactions\/Deserializers\/TransferTest.php":"2d2ec72619d1c85d50e5083ee03e3d47","tests\/Unit\/Transactions\/Deserializers\/ValidatorResignationTest.php":"de8a4e792845736d6e8de410bd9b9964","tests\/Unit\/Transactions\/Deserializers\/UsernameResignationTest.php":"d6756d00fcdbfdf6dff66231e7c13963","tests\/Unit\/Transactions\/Deserializers\/UsernameRegistrationTest.php":"bcce6c8b8f723399cf0bbc3694b20cb0","tests\/Unit\/Transactions\/Deserializers\/ValidatorRegistrationTest.php":"b5227c16d29858234c358fbd61b42187","tests\/Unit\/Transactions\/Deserializers\/VoteTest.php":"24fea3cae6415e250d0b509d45075b99","tests\/Unit\/Transactions\/TransactionTest.php":"5354f8d92c06d7621937d7c7eae98a6c","tests\/Unit\/Transactions\/Serializers\/MultiSignatureRegistrationTest.php":"3f373084bd7e0a66d9296215e55dc22b","tests\/Unit\/Transactions\/Serializers\/MultiPaymentTest.php":"74f8fb7ad9eaa7dd641a94662d33e3f7","tests\/Unit\/Transactions\/Serializers\/TransferTest.php":"7c894b0020554cccbeb2271cc1983d07","tests\/Unit\/Transactions\/Serializers\/ValidatorResignationTest.php":"11659801a5e118e0dc94e0ab36668be9","tests\/Unit\/Transactions\/Serializers\/UsernameResignationTest.php":"a111ef5724a5e2eab34ee2a6ebfe1b14","tests\/Unit\/Transactions\/Serializers\/UsernameRegistrationTest.php":"9ffd45d88dae8572ee8c4e449c8f5f2f","tests\/Unit\/Transactions\/Serializers\/ValidatorRegistrationTest.php":"9db5de66889899781bf3584322d3910d","tests\/Unit\/Transactions\/Serializers\/VoteTest.php":"83244de955fdf5281108357580ee88ab","tests\/Unit\/Transactions\/Builder\/MultiSignatureRegistrationTest.php":"1e4ffffb31067c3769fdab27c72d8d18","tests\/Unit\/Transactions\/Builder\/MultiPaymentTest.php":"83aa39eb438d10a0f923f6881e1286b1","tests\/Unit\/Transactions\/Builder\/TransferTest.php":"ededb5f59308092533a37d332f098c01","tests\/Unit\/Transactions\/Builder\/ValidatorResignationTest.php":"7991aeeb92f72edd09b5ac8cc330c274","tests\/Unit\/Transactions\/Builder\/UsernameResignationTest.php":"b86e7bca66238c51d170e1102d3f6344","tests\/Unit\/Transactions\/Builder\/UsernameRegistrationTest.php":"febb6d64811befb772db11131e011324","tests\/Unit\/Transactions\/Builder\/ValidatorRegistrationTest.php":"d0230a3fcab100e4d30e8c11516064f1","tests\/Unit\/Transactions\/Builder\/VoteTest.php":"b65d1eb166e49db080afec2862cfb3fb","tests\/Unit\/Identities\/PrivateKeyTest.php":"03f1961d973ed6b8c692b962da4aa32a","tests\/Unit\/Identities\/AddressTest.php":"a4ab06676fde6ee32c0edc8f9ef9589e","tests\/Unit\/Identities\/PublicKeyTest.php":"191c8e3d703ed822b6023cd79bbada70","tests\/Unit\/Identities\/WIFTest.php":"0d0ecbed55770bfcc522ff72bfcb1706","tests\/Analysis\/AnalysisTest.php":"cbbd5c2285fef22e0e0ba587bf532921","tests\/Helpers.php":"ead3b754e9d1064afb42b4ba295f7801","tests\/Pest.php":"e94ffd859b54a678b7ea5aa68876c925","tests\/TestCase.php":"3c90f64bca41edc46109bf117931ff53","tests\/Concerns\/Fixtures.php":"c9de325db453e274d1080579d184a62c","tests\/Concerns\/Deserialize.php":"b3b4f195433141dd1777f1c06f609369","tests\/Concerns\/Serialize.php":"09b88a0cfddcb168234433ed51e49eff","src\/Configuration\/Fee.php":"87a630a16fc6a3c84498ac70ba597b16","src\/Configuration\/Network.php":"339e6038b9b32ac6a52af7bcda424d42","src\/ByteBuffer\/ByteOrder.php":"65bb9e577fa7b13b9a900fd3a137684b","src\/ByteBuffer\/LengthMap.php":"d0b264f13f03b8c05e062bc4de93b9d1","src\/ByteBuffer\/ByteBuffer.php":"fd1cc054c10dd8df7c1c8012d2f3db06","src\/ByteBuffer\/Concerns\/Positionable.php":"21f1bc9e5ae32757e035e3a7d33d87d3","src\/ByteBuffer\/Concerns\/Initialisable.php":"1d40427ebf896a531eca906d04b68a9f","src\/ByteBuffer\/Concerns\/Writes\/Integer.php":"bde87e28b98eedab7d03f5005545567b","src\/ByteBuffer\/Concerns\/Writes\/Hex.php":"872f1d7f694f06884112d9d201427e44","src\/ByteBuffer\/Concerns\/Writes\/Floats.php":"b7274ecd25eea7c145e8fd285e95358d","src\/ByteBuffer\/Concerns\/Writes\/Strings.php":"0b4bf46752c98e15343432f95d2b3c33","src\/ByteBuffer\/Concerns\/Writes\/UnsignedInteger.php":"ad3ee7c154b4fe0748b35933a785fac7","src\/ByteBuffer\/Concerns\/Reads\/Integer.php":"2bdb398f7b8d1a3d74b081d50078f91f","src\/ByteBuffer\/Concerns\/Reads\/Hex.php":"42f57a6e7a0362565981c27f5f2b4e89","src\/ByteBuffer\/Concerns\/Reads\/Floats.php":"24866c6415f082abbe8e7b84d150cb8b","src\/ByteBuffer\/Concerns\/Reads\/Strings.php":"52f0b848979f7f4ac0fd429bd20518d9","src\/ByteBuffer\/Concerns\/Reads\/UnsignedInteger.php":"5e5e44b81cd96280fd4c1878b532955c","src\/ByteBuffer\/Concerns\/Sizeable.php":"7b8664a95149592e15222c8ed38ffbd6","src\/ByteBuffer\/Concerns\/Transformable.php":"ba95c5e5ac572b7c7e0448e43ed9b27a","src\/ByteBuffer\/Concerns\/Writeable.php":"651c15dfb022146d91638dbcc1072197","src\/ByteBuffer\/Concerns\/Readable.php":"b7db578561d0402e6abac0765dc15715","src\/ByteBuffer\/Concerns\/Offsetable.php":"593adce2783b7f974bf53aca3177c344","src\/Enums\/Fees.php":"cdb346bd571ebf9037d11b1d364a74ce","src\/Enums\/TypeGroup.php":"4ca4497579cd5d5e1d9466717a7b5a11","src\/Enums\/Types.php":"167047c895f020ee9a9c79a40bbaa4cd","src\/Utils\/Address.php":"076cce2b4a8bd66d81fb5e4a7a888b97","src\/Utils\/Slot.php":"72bbf7f3309c1b35fe573d263a56eb75","src\/Utils\/Message.php":"41124e185ab03dfee684134d68b1af37","src\/Networks\/Mainnet.php":"7c3d535d3ca99af860ea6ffdf5b75454","src\/Networks\/Testnet.php":"951d86285a3abaf46753cd6ae7faaf91","src\/Networks\/AbstractNetwork.php":"d9c64390bb5078612c8f68ea8c7fede3","src\/Networks\/Devnet.php":"3f7f5f9f571eca593daad45ec991f0ba","src\/Transactions\/Serializer.php":"999bcd0e994ed03bd5efc899a2b85907","src\/Transactions\/Types\/Transaction.php":"d210307b9290e056251abd67fa945354","src\/Transactions\/Types\/HtlcClaim.php":"8214718a175cd2cf99c05787cd3bf336","src\/Transactions\/Types\/ValidatorResignation.php":"bac30b62170d366a666aa8e5f0c5589c","src\/Transactions\/Types\/Vote.php":"a773dce0897facc0884ebb5864d6c40b","src\/Transactions\/Types\/MultiPayment.php":"5b56a804ff272e3cca13bc9eae41bf7b","src\/Transactions\/Types\/SecondSignatureRegistration.php":"ad8f221e8eda825959dbab65c22260d8","src\/Transactions\/Types\/MultiSignatureRegistration.php":"33a903c33cef06b30f67a4ebbee502d9","src\/Transactions\/Types\/HtlcLock.php":"5a227f7afe08445754898c380b43f435","src\/Transactions\/Types\/ValidatorRegistration.php":"e07cda3192e464c3bec87ebd6aa8be56","src\/Transactions\/Types\/HtlcRefund.php":"3bc7171698dbb762f9403da3a4e5a86f","src\/Transactions\/Types\/Transfer.php":"57a9fb23f97b53bb1f6fb2df44f988a4","src\/Transactions\/Types\/IPFS.php":"5c3deeb61e33e87d1a19ff4e0c5044cb","src\/Transactions\/Types\/UsernameRegistration.php":"01392ec4f48086e4b3ae8629740b7966","src\/Transactions\/Types\/UsernameResignation.php":"77dbcf9cf72da5ae16f99826c493dcc3","src\/Transactions\/Deserializer.php":"edae9904e20caeb46476c910edafe163","src\/Transactions\/Builder\/UsernameResignationBuilder.php":"64c1fdaecaedaa91e26905896e460298","src\/Transactions\/Builder\/MultiSignatureRegistrationBuilder.php":"526918864cac6d6833f7f8e827c8a46a","src\/Transactions\/Builder\/TransferBuilder.php":"0c916c9eafa08a684f1eb4278c2d84e4","src\/Transactions\/Builder\/ValidatorRegistrationBuilder.php":"56bc03dcf88ef10ae77c941e188d6ed8","src\/Transactions\/Builder\/VoteBuilder.php":"e53cd3d838f44ce7a5acb675a8cd7538","src\/Transactions\/Builder\/HtlcLockBuilder.php":"ed9ac4b4955862bf31da2b1f10e529d7","src\/Transactions\/Builder\/AbstractTransactionBuilder.php":"3ce66befc78605cda0471578cb671078","src\/Transactions\/Builder\/HtlcRefundBuilder.php":"79eca04bf8af723a0069b3154322fe68","src\/Transactions\/Builder\/SecondSignatureRegistrationBuilder.php":"8421e4135b765cef02f9ab5589026e36","src\/Transactions\/Builder\/MultiPaymentBuilder.php":"c576446fe8623da8e20ed4a3b71cfade","src\/Transactions\/Builder\/IPFSBuilder.php":"2127dd4ff096dff2cfb8ca225c6e3d7b","src\/Transactions\/Builder\/UsernameRegistrationBuilder.php":"2ae9a4cfa2952c4b2e443b7c351fbf2a","src\/Transactions\/Builder\/ValidatorResignationBuilder.php":"7052696763ba94954724e419233b8ad9","src\/Transactions\/Builder\/HtlcClaimBuilder.php":"a56483968acddeca42e20cce6ac1263c","src\/Binary\/Hex\/Writer.php":"2496bf019f929cf9b86f9ae807fba98f","src\/Binary\/Hex\/Reader.php":"064f535617aed54bb9005b81d0b23532","src\/Binary\/UnsignedInteger\/Writer.php":"4b57b334e27dc1039c3a6bf86a674c31","src\/Binary\/UnsignedInteger\/Reader.php":"c39af81995cc3e68a74e7d1155c902f3","src\/Binary\/Integer\/Writer.php":"5c3fe724a68702d4d569bb0831909310","src\/Binary\/Integer\/Reader.php":"93175a3453a38cf7c6cf67b64ae16e46","src\/Binary\/Buffer\/Reader\/Buffer.php":"9ba298d595c72b3c78dd7efbade9b4bd","src\/Binary\/Buffer\/Reader\/Concerns\/Integer.php":"8201db89898e460687e403f2b31fca61","src\/Binary\/Buffer\/Reader\/Concerns\/Hex.php":"08b0855b0ae65ccf454883500f4a27d2","src\/Binary\/Buffer\/Reader\/Concerns\/UnsignedInteger.php":"3ebb1be29fa00118bec01a5b77995cbe","src\/Binary\/Buffer\/Writer\/Buffer.php":"756e1a6401609140d4d5a11866c0c349","src\/Binary\/Buffer\/Writer\/Concerns\/Integer.php":"c7c45e149c2cf9e83f4059c0e0036eee","src\/Binary\/Buffer\/Writer\/Concerns\/Hex.php":"4bda0887fbdd3b12889859fbc17c8519","src\/Binary\/Buffer\/Writer\/Concerns\/Generic.php":"a35a59ffe67e970dd8de5b951c9554b7","src\/Binary\/Buffer\/Writer\/Concerns\/UnsignedInteger.php":"4980bae47f9d4c516d886f431af9bd99","src\/Identities\/Address.php":"708b0a1cb0e710df85629556f76f63bc","src\/Identities\/PublicKey.php":"557b47038465ca83074363120d39b606","src\/Identities\/WIF.php":"1351c493585c7e11ab422e3a9fa89135","src\/Identities\/PrivateKey.php":"14297ccc35e2f42bc23afe2e8272a40f","src\/Helpers.php":"406e67af10ba8f83dc20eb840cdb8669"}} \ No newline at end of file +{"php":"8.1.2-1ubuntu2.18","version":"3.59.3:v3.59.3#30ba9ecc2b0e5205e578fe29973c15653d9bfd29","indent":" ","lineEnding":"\n","rules":{"array_syntax":{"syntax":"short"},"binary_operator_spaces":{"default":"single_space","operators":{"=":"align","=>":"align"}},"blank_line_after_namespace":true,"blank_line_after_opening_tag":true,"blank_line_before_statement":{"statements":["break","continue","declare","return","throw","try"]},"braces":true,"cast_spaces":true,"class_attributes_separation":{"elements":{"const":"one","method":"one","property":"one"}},"class_definition":true,"concat_space":{"spacing":"none"},"constant_case":{"case":"lower"},"declare_equal_normalize":true,"declare_strict_types":true,"echo_tag_syntax":{"format":"long"},"elseif":true,"encoding":true,"final_internal_class":true,"full_opening_tag":true,"fully_qualified_strict_types":true,"function_declaration":true,"function_typehint_space":true,"heredoc_to_nowdoc":true,"include":true,"increment_style":{"style":"post"},"indentation_type":true,"linebreak_after_opening_tag":true,"line_ending":true,"lowercase_cast":true,"lowercase_keywords":true,"lowercase_static_reference":true,"magic_method_casing":true,"magic_constant_casing":true,"method_argument_space":true,"multiline_whitespace_before_semicolons":{"strategy":"no_multi_line"},"native_function_casing":true,"new_with_braces":true,"no_alias_functions":true,"no_blank_lines_after_class_opening":true,"no_blank_lines_after_phpdoc":true,"no_closing_tag":true,"no_empty_phpdoc":true,"no_empty_statement":true,"no_extra_blank_lines":{"tokens":["extra","throw","use","use_trait"]},"no_leading_import_slash":true,"no_leading_namespace_whitespace":true,"no_mixed_echo_print":{"use":"echo"},"no_multiline_whitespace_around_double_arrow":true,"no_short_bool_cast":true,"no_singleline_whitespace_before_semicolons":true,"no_spaces_after_function_name":true,"no_spaces_around_offset":{"positions":["inside"]},"no_spaces_inside_parenthesis":true,"no_trailing_comma_in_list_call":true,"no_trailing_comma_in_singleline_array":true,"no_trailing_whitespace":true,"no_trailing_whitespace_in_comment":true,"no_unneeded_control_parentheses":{"statements":["break","clone","continue","echo_print","return","switch_case","yield"]},"no_unreachable_default_argument_value":true,"no_unused_imports":true,"no_useless_else":true,"no_useless_return":true,"no_whitespace_before_comma_in_array":true,"no_whitespace_in_blank_line":true,"normalize_index_brace":true,"not_operator_with_successor_space":true,"object_operator_without_whitespace":true,"ordered_class_elements":true,"ordered_imports":{"sort_algorithm":"alpha"},"php_unit_strict":true,"php_unit_test_class_requires_covers":true,"phpdoc_add_missing_param_annotation":true,"phpdoc_indent":true,"phpdoc_inline_tag_normalizer":true,"phpdoc_no_access":true,"phpdoc_no_package":true,"phpdoc_no_useless_inheritdoc":true,"phpdoc_order":true,"phpdoc_scalar":true,"phpdoc_single_line_var_spacing":true,"phpdoc_summary":true,"phpdoc_to_comment":{"ignored_tags":["var"]},"phpdoc_trim":true,"phpdoc_types":true,"phpdoc_var_without_name":true,"psr_autoloading":true,"self_accessor":true,"semicolon_after_instruction":true,"short_scalar_cast":true,"simplified_null_return":true,"single_blank_line_at_eof":true,"single_blank_line_before_namespace":true,"single_class_element_per_statement":{"elements":["const","property"]},"single_import_per_statement":true,"single_line_after_imports":true,"single_line_comment_style":{"comment_types":["hash"]},"single_quote":true,"single_trait_insert_per_statement":true,"space_after_semicolon":true,"standardize_not_equals":true,"strict_comparison":true,"strict_param":true,"switch_case_semicolon_to_colon":true,"switch_case_space":true,"ternary_operator_spaces":true,"trailing_comma_in_multiline":{"elements":["arrays"]},"trim_array_spaces":true,"unary_operator_spaces":true,"visibility_required":{"elements":["property","method","const"]},"whitespace_after_comma_in_array":true},"hashes":{"src\/Transactions\/Types\/Transfer.php":"57a9fb23f97b53bb1f6fb2df44f988a4","src\/Transactions\/Types\/Transaction.php":"d210307b9290e056251abd67fa945354","src\/Transactions\/Types\/Vote.php":"a773dce0897facc0884ebb5864d6c40b","src\/Transactions\/Types\/ValidatorRegistration.php":"e07cda3192e464c3bec87ebd6aa8be56","src\/Transactions\/Types\/UsernameRegistration.php":"01392ec4f48086e4b3ae8629740b7966","src\/Transactions\/Types\/HtlcLock.php":"5a227f7afe08445754898c380b43f435","src\/Transactions\/Types\/ValidatorResignation.php":"bac30b62170d366a666aa8e5f0c5589c","src\/Transactions\/Types\/HtlcClaim.php":"8214718a175cd2cf99c05787cd3bf336","src\/Transactions\/Types\/SecondSignatureRegistration.php":"ad8f221e8eda825959dbab65c22260d8","src\/Transactions\/Types\/HtlcRefund.php":"3bc7171698dbb762f9403da3a4e5a86f","src\/Transactions\/Types\/MultiPayment.php":"5b56a804ff272e3cca13bc9eae41bf7b","src\/Transactions\/Types\/MultiSignatureRegistration.php":"33a903c33cef06b30f67a4ebbee502d9","src\/Transactions\/Types\/UsernameResignation.php":"77dbcf9cf72da5ae16f99826c493dcc3","src\/Transactions\/Types\/IPFS.php":"5c3deeb61e33e87d1a19ff4e0c5044cb","src\/Transactions\/Builder\/MultiSignatureRegistrationBuilder.php":"526918864cac6d6833f7f8e827c8a46a","src\/Transactions\/Builder\/ValidatorResignationBuilder.php":"7052696763ba94954724e419233b8ad9","src\/Transactions\/Builder\/HtlcLockBuilder.php":"ed9ac4b4955862bf31da2b1f10e529d7","src\/Transactions\/Builder\/ValidatorRegistrationBuilder.php":"56bc03dcf88ef10ae77c941e188d6ed8","src\/Transactions\/Builder\/HtlcClaimBuilder.php":"a56483968acddeca42e20cce6ac1263c","src\/Transactions\/Builder\/UsernameRegistrationBuilder.php":"2ae9a4cfa2952c4b2e443b7c351fbf2a","src\/Transactions\/Builder\/HtlcRefundBuilder.php":"79eca04bf8af723a0069b3154322fe68","src\/Transactions\/Builder\/TransferBuilder.php":"0c916c9eafa08a684f1eb4278c2d84e4","src\/Transactions\/Builder\/SecondSignatureRegistrationBuilder.php":"8421e4135b765cef02f9ab5589026e36","src\/Transactions\/Builder\/IPFSBuilder.php":"2127dd4ff096dff2cfb8ca225c6e3d7b","src\/Transactions\/Builder\/MultiPaymentBuilder.php":"c576446fe8623da8e20ed4a3b71cfade","src\/Transactions\/Builder\/AbstractTransactionBuilder.php":"3ce66befc78605cda0471578cb671078","src\/Transactions\/Builder\/VoteBuilder.php":"e53cd3d838f44ce7a5acb675a8cd7538","src\/Transactions\/Builder\/UsernameResignationBuilder.php":"64c1fdaecaedaa91e26905896e460298","src\/Transactions\/Serializer.php":"999bcd0e994ed03bd5efc899a2b85907","src\/Transactions\/Deserializer.php":"edae9904e20caeb46476c910edafe163","src\/Utils\/Message.php":"41124e185ab03dfee684134d68b1af37","src\/Utils\/Address.php":"076cce2b4a8bd66d81fb5e4a7a888b97","src\/Utils\/Slot.php":"72bbf7f3309c1b35fe573d263a56eb75","src\/Identities\/PrivateKey.php":"14297ccc35e2f42bc23afe2e8272a40f","src\/Identities\/WIF.php":"1351c493585c7e11ab422e3a9fa89135","src\/Identities\/Address.php":"708b0a1cb0e710df85629556f76f63bc","src\/Identities\/PublicKey.php":"557b47038465ca83074363120d39b606","src\/Binary\/Hex\/Writer.php":"2496bf019f929cf9b86f9ae807fba98f","src\/Binary\/Hex\/Reader.php":"064f535617aed54bb9005b81d0b23532","src\/Binary\/Buffer\/Writer\/Concerns\/Integer.php":"c7c45e149c2cf9e83f4059c0e0036eee","src\/Binary\/Buffer\/Writer\/Concerns\/Generic.php":"a35a59ffe67e970dd8de5b951c9554b7","src\/Binary\/Buffer\/Writer\/Concerns\/Hex.php":"4bda0887fbdd3b12889859fbc17c8519","src\/Binary\/Buffer\/Writer\/Concerns\/UnsignedInteger.php":"4980bae47f9d4c516d886f431af9bd99","src\/Binary\/Buffer\/Writer\/Buffer.php":"756e1a6401609140d4d5a11866c0c349","src\/Binary\/Buffer\/Reader\/Concerns\/Integer.php":"8201db89898e460687e403f2b31fca61","src\/Binary\/Buffer\/Reader\/Concerns\/Hex.php":"08b0855b0ae65ccf454883500f4a27d2","src\/Binary\/Buffer\/Reader\/Concerns\/UnsignedInteger.php":"3ebb1be29fa00118bec01a5b77995cbe","src\/Binary\/Buffer\/Reader\/Buffer.php":"9ba298d595c72b3c78dd7efbade9b4bd","src\/Binary\/UnsignedInteger\/Writer.php":"4b57b334e27dc1039c3a6bf86a674c31","src\/Binary\/UnsignedInteger\/Reader.php":"c39af81995cc3e68a74e7d1155c902f3","src\/Binary\/Integer\/Writer.php":"5c3fe724a68702d4d569bb0831909310","src\/Binary\/Integer\/Reader.php":"93175a3453a38cf7c6cf67b64ae16e46","src\/Enums\/TypeGroup.php":"4ca4497579cd5d5e1d9466717a7b5a11","src\/Enums\/Fees.php":"cdb346bd571ebf9037d11b1d364a74ce","src\/Enums\/Types.php":"167047c895f020ee9a9c79a40bbaa4cd","src\/Configuration\/Network.php":"339e6038b9b32ac6a52af7bcda424d42","src\/Configuration\/Fee.php":"87a630a16fc6a3c84498ac70ba597b16","src\/Networks\/Testnet.php":"951d86285a3abaf46753cd6ae7faaf91","src\/Networks\/Devnet.php":"3f7f5f9f571eca593daad45ec991f0ba","src\/Networks\/AbstractNetwork.php":"d9c64390bb5078612c8f68ea8c7fede3","src\/Networks\/Mainnet.php":"7c3d535d3ca99af860ea6ffdf5b75454","src\/ByteBuffer\/ByteBuffer.php":"fd1cc054c10dd8df7c1c8012d2f3db06","src\/ByteBuffer\/Concerns\/Readable.php":"b7db578561d0402e6abac0765dc15715","src\/ByteBuffer\/Concerns\/Positionable.php":"21f1bc9e5ae32757e035e3a7d33d87d3","src\/ByteBuffer\/Concerns\/Writes\/Integer.php":"bde87e28b98eedab7d03f5005545567b","src\/ByteBuffer\/Concerns\/Writes\/Hex.php":"872f1d7f694f06884112d9d201427e44","src\/ByteBuffer\/Concerns\/Writes\/UnsignedInteger.php":"ad3ee7c154b4fe0748b35933a785fac7","src\/ByteBuffer\/Concerns\/Writes\/Strings.php":"0b4bf46752c98e15343432f95d2b3c33","src\/ByteBuffer\/Concerns\/Writes\/Floats.php":"b7274ecd25eea7c145e8fd285e95358d","src\/ByteBuffer\/Concerns\/Sizeable.php":"7b8664a95149592e15222c8ed38ffbd6","src\/ByteBuffer\/Concerns\/Initialisable.php":"1d40427ebf896a531eca906d04b68a9f","src\/ByteBuffer\/Concerns\/Reads\/Integer.php":"2bdb398f7b8d1a3d74b081d50078f91f","src\/ByteBuffer\/Concerns\/Reads\/Hex.php":"42f57a6e7a0362565981c27f5f2b4e89","src\/ByteBuffer\/Concerns\/Reads\/UnsignedInteger.php":"5e5e44b81cd96280fd4c1878b532955c","src\/ByteBuffer\/Concerns\/Reads\/Strings.php":"52f0b848979f7f4ac0fd429bd20518d9","src\/ByteBuffer\/Concerns\/Reads\/Floats.php":"24866c6415f082abbe8e7b84d150cb8b","src\/ByteBuffer\/Concerns\/Offsetable.php":"593adce2783b7f974bf53aca3177c344","src\/ByteBuffer\/Concerns\/Writeable.php":"651c15dfb022146d91638dbcc1072197","src\/ByteBuffer\/Concerns\/Transformable.php":"ba95c5e5ac572b7c7e0448e43ed9b27a","src\/ByteBuffer\/ByteOrder.php":"65bb9e577fa7b13b9a900fd3a137684b","src\/ByteBuffer\/LengthMap.php":"d0b264f13f03b8c05e062bc4de93b9d1","src\/Helpers.php":"406e67af10ba8f83dc20eb840cdb8669","tests\/Concerns\/Fixtures.php":"c9de325db453e274d1080579d184a62c","tests\/Concerns\/Serialize.php":"09b88a0cfddcb168234433ed51e49eff","tests\/Concerns\/Deserialize.php":"b3b4f195433141dd1777f1c06f609369","tests\/Pest.php":"e94ffd859b54a678b7ea5aa68876c925","tests\/TestCase.php":"3c90f64bca41edc46109bf117931ff53","tests\/Unit\/Transactions\/Builder\/MultiSignatureRegistrationTest.php":"1e4ffffb31067c3769fdab27c72d8d18","tests\/Unit\/Transactions\/Builder\/UsernameRegistrationTest.php":"febb6d64811befb772db11131e011324","tests\/Unit\/Transactions\/Builder\/VoteTest.php":"b65d1eb166e49db080afec2862cfb3fb","tests\/Unit\/Transactions\/Builder\/UsernameResignationTest.php":"b86e7bca66238c51d170e1102d3f6344","tests\/Unit\/Transactions\/Builder\/ValidatorRegistrationTest.php":"d0230a3fcab100e4d30e8c11516064f1","tests\/Unit\/Transactions\/Builder\/ValidatorResignationTest.php":"7991aeeb92f72edd09b5ac8cc330c274","tests\/Unit\/Transactions\/Builder\/TransferTest.php":"ededb5f59308092533a37d332f098c01","tests\/Unit\/Transactions\/Builder\/MultiPaymentTest.php":"83aa39eb438d10a0f923f6881e1286b1","tests\/Unit\/Transactions\/TransactionTest.php":"5354f8d92c06d7621937d7c7eae98a6c","tests\/Unit\/Transactions\/Deserializers\/MultiSignatureRegistrationTest.php":"4d554fe98a83156f2a508967ccf2f219","tests\/Unit\/Transactions\/Deserializers\/UsernameRegistrationTest.php":"bcce6c8b8f723399cf0bbc3694b20cb0","tests\/Unit\/Transactions\/Deserializers\/VoteTest.php":"24fea3cae6415e250d0b509d45075b99","tests\/Unit\/Transactions\/Deserializers\/UsernameResignationTest.php":"d6756d00fcdbfdf6dff66231e7c13963","tests\/Unit\/Transactions\/Deserializers\/ValidatorRegistrationTest.php":"b5227c16d29858234c358fbd61b42187","tests\/Unit\/Transactions\/Deserializers\/ValidatorResignationTest.php":"de8a4e792845736d6e8de410bd9b9964","tests\/Unit\/Transactions\/Deserializers\/TransferTest.php":"2d2ec72619d1c85d50e5083ee03e3d47","tests\/Unit\/Transactions\/Deserializers\/MultiPaymentTest.php":"6b8bc6e0b6851312d74b0f9e830787e2","tests\/Unit\/Transactions\/Serializers\/MultiSignatureRegistrationTest.php":"3f373084bd7e0a66d9296215e55dc22b","tests\/Unit\/Transactions\/Serializers\/UsernameRegistrationTest.php":"9ffd45d88dae8572ee8c4e449c8f5f2f","tests\/Unit\/Transactions\/Serializers\/VoteTest.php":"83244de955fdf5281108357580ee88ab","tests\/Unit\/Transactions\/Serializers\/UsernameResignationTest.php":"a111ef5724a5e2eab34ee2a6ebfe1b14","tests\/Unit\/Transactions\/Serializers\/ValidatorRegistrationTest.php":"9db5de66889899781bf3584322d3910d","tests\/Unit\/Transactions\/Serializers\/ValidatorResignationTest.php":"11659801a5e118e0dc94e0ab36668be9","tests\/Unit\/Transactions\/Serializers\/TransferTest.php":"7c894b0020554cccbeb2271cc1983d07","tests\/Unit\/Transactions\/Serializers\/MultiPaymentTest.php":"74f8fb7ad9eaa7dd641a94662d33e3f7","tests\/Unit\/Utils\/AddressTest.php":"29dc6462f3844d35818edf59ec1b59f2","tests\/Unit\/Utils\/MessageTest.php":"f53f55fb0cc3b34ecba4e36f11ccad3a","tests\/Unit\/Utils\/SlotTest.php":"0f9639a94ca904aab58de8e2bee771e7","tests\/Unit\/Identities\/PublicKeyTest.php":"191c8e3d703ed822b6023cd79bbada70","tests\/Unit\/Identities\/AddressTest.php":"a4ab06676fde6ee32c0edc8f9ef9589e","tests\/Unit\/Identities\/WIFTest.php":"0d0ecbed55770bfcc522ff72bfcb1706","tests\/Unit\/Identities\/PrivateKeyTest.php":"03f1961d973ed6b8c692b962da4aa32a","tests\/Unit\/Configuration\/FeeTest.php":"bcc4844a5eaa86d2423b87d9413e07f3","tests\/Unit\/Configuration\/NetworkTest.php":"a0c93282667a0db8c7746e105a3a23f5","tests\/Unit\/Networks\/DevnetTest.php":"55731cf7389728d924c87d3bf591318a","tests\/Unit\/Networks\/NetworkTestCase.php":"080da14e3d30370dab0e5c325e883b1e","tests\/Unit\/Networks\/MainnetTest.php":"ef8ae566506f3d797fa9f6a117acc844","tests\/Unit\/Networks\/TestnetTest.php":"ae92bf475035ad441956192704e33729","tests\/Unit\/ByteBuffer\/ByteBufferTest.php":"3f2ccca6307fb3dfb53c592d84195d14","tests\/Unit\/ByteBuffer\/LengthMapTest.php":"566eadccee85259d94a620578a542dbf","tests\/Unit\/ByteBuffer\/Concerns\/InitialisableTest.php":"3670bb0159fa8cd97075fe71489ab1d9","tests\/Unit\/ByteBuffer\/Concerns\/SizeableTest.php":"cbd2994ce7be1ef9c086291483797ab5","tests\/Unit\/ByteBuffer\/Concerns\/OffsetableTest.php":"a62d22fff1ff4e5f350d584f1ddf60cd","tests\/Unit\/ByteBuffer\/Concerns\/Writes\/StringsTest.php":"da21b61dca9950da63270ab8993ae014","tests\/Unit\/ByteBuffer\/Concerns\/Writes\/UnsignedIntegerTest.php":"f3b02a10025b3544d1b825fbd2692b32","tests\/Unit\/ByteBuffer\/Concerns\/Writes\/FloatsTest.php":"9a32203626cc79e050f42c14fa3e6ba7","tests\/Unit\/ByteBuffer\/Concerns\/Writes\/IntegerTest.php":"849b9922e0623d0042dd7c1adedb3da3","tests\/Unit\/ByteBuffer\/Concerns\/Writes\/HexTest.php":"a5296fa0dc0e72b7e3cdce32b126b84e","tests\/Unit\/ByteBuffer\/Concerns\/TransformableTest.php":"64f87f6a19e09d5fc5abe196c1910dff","tests\/Unit\/ByteBuffer\/Concerns\/PositionableTest.php":"8ef867799d158bcbe44b2bee3ce36a83","tests\/Unit\/ByteBuffer\/Concerns\/Reads\/StringsTest.php":"263c9acf17a9a1bf5fa32ab1eeae0b29","tests\/Unit\/ByteBuffer\/Concerns\/Reads\/UnsignedIntegerTest.php":"bc1ba970efad3acc0f1d57667efa0402","tests\/Unit\/ByteBuffer\/Concerns\/Reads\/FloatsTest.php":"291829435c86a2c093fbb886a56a2b88","tests\/Unit\/ByteBuffer\/Concerns\/Reads\/IntegerTest.php":"783a66094d698d93bd00f59236f7a093","tests\/Unit\/ByteBuffer\/Concerns\/Reads\/HexTest.php":"327d716d6c6da6da3c490fa293afd49e","tests\/Analysis\/AnalysisTest.php":"cbbd5c2285fef22e0e0ba587bf532921","tests\/Helpers.php":"ead3b754e9d1064afb42b4ba295f7801"}} \ No newline at end of file