test_class.declarator: PUBKEY1 = "302a300506032b6570032100df2226d8633a4f392cca1c5d198ae10e99e1192b51b665d2d8ce06fa2896d3ae"
test_class.modifier: private static final
test_class.original_string: private static final String PUBKEY1 = "302a300506032b6570032100df2226d8633a4f392cca1c5d198ae10e99e1192b51b665d2d8ce06fa2896d3ae";
test_class.type: String
test_class.var_name: PUBKEY1
test_class.declarator: PUBKEY2 = "302a300506032b6570032100c9a77a22407913ce2b0f4e360a228fdae8ca14db5055aa97296e828b7546bd36"
test_class.modifier: private static final
test_class.original_string: private static final String PUBKEY2 = "302a300506032b6570032100c9a77a22407913ce2b0f4e360a228fdae8ca14db5055aa97296e828b7546bd36";
test_class.type: String
test_class.var_name: PUBKEY2
test_class.declarator: PUBKEY3 = "302a300506032b6570032100892bd1625b22d4bc1b1700d9f8aa822a7ad97ffa380fdf765aae7ce97a234e6b"
test_class.modifier: private static final
test_class.original_string: private static final String PUBKEY3 = "302a300506032b6570032100892bd1625b22d4bc1b1700d9f8aa822a7ad97ffa380fdf765aae7ce97a234e6b";
test_class.type: String
test_class.var_name: PUBKEY3
test_class.file: jlibra-core/src/test/java/dev/jlibra/MultisignaturePublicKeyTest.java
test_class.identifier: MultisignaturePublicKeyTest
test_case.body: @Test
      public void testCreate() {
          MultiSignaturePublicKey multisigPubKey = MultiSignaturePublicKey.create(asList(PublicKey.fromHexString(PUBKEY1),
                  PublicKey.fromHexString(PUBKEY2), PublicKey.fromHexString(PUBKEY3)), 2);
  
          assertThat(multisigPubKey.toString(), is(
                  "df2226d8633a4f392cca1c5d198ae10e99e1192b51b665d2d8ce06fa2896d3aec9a77a22407913ce2b0f4e360a228fdae8ca14db5055aa97296e828b7546bd36892bd1625b22d4bc1b1700d9f8aa822a7ad97ffa380fdf765aae7ce97a234e6b02"));
      }
test_case.class_method_signature: MultisignaturePublicKeyTest.testCreate()
test_case.full_signature: @Test public void testCreate()
test_case.identifier: testCreate
test_case.invocations: create asList fromHexString fromHexString fromHexString assertThat toString is
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testCreate()
focal_class.declarator: bytes
focal_class.modifier: private
focal_class.original_string: private ByteArray bytes;
focal_class.type: ByteArray
focal_class.var_name: bytes
focal_class.file: jlibra-core/src/main/java/dev/jlibra/MultiSignaturePublicKey.java
focal_class.identifier: MultiSignaturePublicKey
focal_class.interfaces: implements ByteSequence
focal_class.class_method_signature: MultiSignaturePublicKey.MultiSignaturePublicKey(ByteArray bytes)
focal_class.full_signature: private  MultiSignaturePublicKey(ByteArray bytes)
focal_class.identifier: MultiSignaturePublicKey
focal_class.modifiers: private
focal_class.parameters: (ByteArray bytes)
focal_class.signature:  MultiSignaturePublicKey(ByteArray bytes)
focal_class.class_method_signature: MultiSignaturePublicKey.create(List<PublicKey> publicKeys, int threshold)
focal_class.full_signature: public static MultiSignaturePublicKey create(List<PublicKey> publicKeys, int threshold)
focal_class.identifier: create
focal_class.modifiers: public static
focal_class.parameters: (List<PublicKey> publicKeys, int threshold)
focal_class.return: MultiSignaturePublicKey
focal_class.signature: MultiSignaturePublicKey create(List<PublicKey> publicKeys, int threshold)
focal_class.class_method_signature: MultiSignaturePublicKey.toArray()
focal_class.full_signature: public byte[] toArray()
focal_class.identifier: toArray
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: byte[]
focal_class.signature: byte[] toArray()
focal_class.class_method_signature: MultiSignaturePublicKey.toString()
focal_class.full_signature: @Override public String toString()
focal_class.identifier: toString
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String toString()
focal_method.body: public static MultiSignaturePublicKey create(List<PublicKey> publicKeys, int threshold) {
          byte[] multiSigPublicKeyBytes = new byte[publicKeys.size() * PUBLIC_KEY_LENGTH + 1];
          int counter = 0;
          for (PublicKey pk : publicKeys) {
              byte[] pkBytes = pk.toArray();
              System.arraycopy(pkBytes, 0, multiSigPublicKeyBytes, counter++ * PUBLIC_KEY_LENGTH, PUBLIC_KEY_LENGTH);
          }
          multiSigPublicKeyBytes[multiSigPublicKeyBytes.length - 1] = (byte) threshold;
          return new MultiSignaturePublicKey(ByteArray.from(multiSigPublicKeyBytes));
      }
focal_method.class_method_signature: MultiSignaturePublicKey.create(List<PublicKey> publicKeys, int threshold)
focal_method.full_signature: public static MultiSignaturePublicKey create(List<PublicKey> publicKeys, int threshold)
focal_method.identifier: create
focal_method.invocations: size toArray arraycopy from
focal_method.modifiers: public static
focal_method.parameters: (List<PublicKey> publicKeys, int threshold)
focal_method.return: MultiSignaturePublicKey
focal_method.signature: MultiSignaturePublicKey create(List<PublicKey> publicKeys, int threshold)