@JsonCreator
  public static org.hyperledger.besu.datatypes.CodeDelegation createCodeDelegation(
      @JsonProperty("chainId") @JsonDeserialize(using = ChainIdDeserializer.class)
          final BigInteger chainId,
      @JsonProperty("address") final Address address,
      @JsonProperty("nonce") final String nonce,
      @JsonProperty("v") final String v,
      @JsonProperty("r") final String r,
      @JsonProperty("s") final String s) {
    return new CodeDelegation(
        chainId,
        address,
        Bytes.fromHexStringLenient(nonce).toLong(),
        SIGNATURE_ALGORITHM
            .get()
            .createCodeDelegationSignature(
                Bytes.fromHexStringLenient(r).toUnsignedBigInteger(),
                Bytes.fromHexStringLenient(s).toUnsignedBigInteger(),
                Bytes.fromHexStringLenient(v).get(0)));
  }
Create code delegation.

@param chainId can be either the current chain id or zero
@param address the address from which the code will be set into the EOA account
@param nonce the nonce
@param v the recovery id
@param r the r value of the signature
@param s the s value of the signature
@return CodeDelegation
ethereum/core/src/main/java/org/hyperledger/besu/ethereum/core/CodeDelegation.java