# Transpile-Compile

#### Transpile

This endpoint is use to convert solidity script into sCrypt. We need to pass base64 version of solidity script and in response we will get sCrypt script.

## Transpile solidity code to sCrypt.

<mark style="color:green;">`POST`</mark> `https://api.relysia.com/v1/transpile`

Takes base64 string of solidity code and converts it to sCrypt.

#### Headers

| Name  | Type    | Description |
| ----- | ------- | ----------- |
| force | boolean |             |

#### Request Body

| Name                                         | Type   | Description               |
| -------------------------------------------- | ------ | ------------------------- |
| sourceCode<mark style="color:red;">\*</mark> | string | base64 of solidity script |

{% tabs %}
{% tab title="200: OK " %}

```javascript
{
  "statusCode": 200,
  "data": {
    "status": "success",
    "msg": "Transpiled successfully",
    "scrypt": "contract Counter {\n  @state\n  public int count;\n\n  public function get(int retVal, SigHashPreimage txPreimage) {\n    require(this.count == retVal);\n    require(this.propagateState(txPreimage, SigHash.value(txPreimage)));\n  }\n\n  public function inc(SigHashPreimage txPreimage) {\n    this.count += 1;\n    require(this.propagateState(txPreimage, SigHash.value(txPreimage)));\n  }\n\n  public function dec(SigHashPreimage txPreimage) {\n    this.count -= 1;\n    require(this.propagateState(txPreimage, SigHash.value(txPreimage)));\n  }\n\n  function propagateState(SigHashPreimage txPreimage, int value) : bool {\n    require(Tx.checkPreimage(txPreimage));\n    bytes outputScript = this.getStateScript();\n    bytes output = Utils.buildOutput(outputScript, value);\n    return hash256(output) == SigHash.hashOutputs(txPreimage);\n  }\n}",
    "errorLogs": []
  }
}
```

{% endtab %}
{% endtabs %}

#### Compile

This endpoint is use to convert sCrypt script into bitcoin script. We need to pass base64 version of sCrypt script and in response we will get bitcoin script.

## Compile sCrypt code to Bitcoin Script.

<mark style="color:green;">`POST`</mark> `https://api.relysia.com/v1/compile`

Takes base64 string of sCrypt code and converts it to Bitcoin Script.

#### Request Body

| Name                                         | Type   | Description             |
| -------------------------------------------- | ------ | ----------------------- |
| sourceCode<mark style="color:red;">\*</mark> | string | base64 of sCrypt script |

{% tabs %}
{% tab title="200: OK " %}

```javascript
{
  "statusCode": 200,
  "data": {
    "status": "success",
    "msg": "Complied successfully",
    "scrypt": "OP_1 40 97dfd76851bf465e8f715593b217714858bbe9570ff3bd5e33840a34e20ff026 02ba79df5f8ae7604a9830f03c7933028186aede0675a16f025dc4f8be8eec0382 1008ce7480da41702918d1ec8e6849ba32b4d65b1e40dc669c31a1e6306b266c $count $__codePart__ OP_7 OP_PICK OP_NOP OP_0 OP_PICK 68 OP_SPLIT OP_NIP OP_NOP OP_0 OP_0 OP_2 OP_PICK OP_1 OP_SPLIT OP_DROP OP_0 OP_SPLIT OP_NIP OP_0 OP_PICK fd OP_EQUAL OP_IF OP_3 OP_PICK OP_3 OP_SPLIT OP_DROP OP_1 OP_SPLIT OP_NIP OP_NOP OP_0 OP_PICK 00 OP_CAT OP_BIN2NUM OP_1 OP_ROLL OP_DROP OP_NOP OP_3 OP_ROLL OP_DROP OP_2 OP_ROLL OP_2 OP_ROLL OP_3 OP_PICK OP_3 OP_4 OP_PICK OP_ADD OP_SPLIT OP_DROP OP_3 OP_SPLIT OP_NIP OP_2 OP_ROLL OP_DROP OP_1 OP_ROLL OP_ELSE OP_0 OP_PICK fe OP_EQUAL OP_IF OP_3 OP_PICK OP_5 OP_SPLIT OP_DROP OP_1 OP_SPLIT OP_NIP OP_NOP OP_0 OP_PICK 00 OP_CAT OP_BIN2NUM OP_1 OP_ROLL OP_DROP OP_NOP OP_3 OP_ROLL OP_DROP OP_2 OP_ROLL OP_2 OP_ROLL OP_3 OP_PICK OP_5 OP_4 OP_PICK OP_ADD OP_SPLIT OP_DROP OP_5 OP_SPLIT OP_NIP OP_2 OP_ROLL OP_DROP OP_1 OP_ROLL OP_ELSE OP_0 OP_PICK ff OP_EQUAL OP_IF OP_3 OP_PICK OP_9 OP_SPLIT OP_DROP OP_1 OP_SPLIT OP_NIP OP_NOP OP_0 OP_PICK 00 OP_CAT OP_BIN2NUM OP_1 OP_ROLL OP_DROP OP_NOP OP_3 OP_ROLL OP_DROP OP_2 OP_ROLL OP_2 OP_ROLL OP_3 OP_PICK OP_9 OP_4 OP_PICK OP_ADD OP_SPLIT OP_DROP OP_9 OP_SPLIT OP_NIP OP_2 OP_ROLL OP_DROP OP_1 OP_ROLL OP_ELSE OP_3 OP_PICK OP_1 OP_SPLIT OP_DROP OP_0 OP_SPLIT OP_NIP OP_NOP OP_0 OP_PICK 00 OP_CAT OP_BIN2NUM OP_1 OP_ROLL OP_DROP OP_NOP OP_3 OP_ROLL OP_DROP OP_2 OP_ROLL OP_2 OP_ROLL OP_3 OP_PICK OP_1 OP_4 OP_PICK OP_ADD OP_SPLIT OP_DROP OP_1 OP_SPLIT OP_NIP OP_2 OP_ROLL OP_DROP OP_1 OP_ROLL OP_ENDIF OP_ENDIF OP_ENDIF OP_1 OP_PICK OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_NOP OP_1 OP_ROLL OP_DROP OP_NOP OP_0 OP_PICK OP_NOP OP_0 OP_PICK OP_SIZE OP_NIP OP_1 OP_PICK OP_1 OP_PICK OP_1 OP_SUB OP_SPLIT OP_DROP OP_1 OP_PICK OP_4 OP_SUB OP_1 OP_SUB OP_SPLIT OP_NIP OP_0 OP_PICK OP_BIN2NUM OP_2 OP_PICK OP_1 OP_PICK OP_SUB OP_4 OP_SUB OP_1 OP_SUB OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_NOP OP_1 OP_PICK OP_1 OP_PICK OP_SPLIT OP_DROP OP_3 OP_ROLL OP_DROP OP_2 OP_ROLL OP_2 OP_ROLL OP_0 OP_0 OP_3 OP_PICK OP_3 OP_PICK OP_SPLIT OP_NIP OP_NOP OP_0 OP_PICK OP_3 OP_ROLL OP_DROP OP_2 OP_ROLL OP_2 OP_ROLL OP_0 OP_2 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_NOP OP_NOP OP_1 OP_PICK OP_1 OP_PICK OP_1 OP_ADD OP_SPLIT OP_DROP OP_1 OP_PICK OP_SPLIT OP_NIP OP_1 OP_PICK OP_DUP OP_1ADD OP_3 OP_ROLL OP_DROP OP_2 OP_ROLL OP_2 OP_ROLL OP_DROP 00 OP_1 OP_PICK OP_EQUAL OP_NOT OP_1 OP_ROLL OP_DROP OP_NOP OP_0 OP_PICK OP_NOT OP_IF OP_NOP OP_NOP OP_0 OP_3 OP_PICK OP_0 OP_1 OP_PICK OP_5 OP_PICK OP_1 OP_ADD OP_SPLIT OP_DROP OP_5 OP_PICK OP_SPLIT OP_NIP OP_BIN2NUM OP_5 OP_PICK OP_DUP OP_1ADD OP_7 OP_ROLL OP_DROP OP_6 OP_ROLL OP_6 OP_ROLL OP_6 OP_ROLL OP_6 OP_ROLL OP_6 OP_ROLL OP_6 OP_ROLL OP_DROP OP_0 OP_PICK 4c OP_LESSTHAN OP_IF OP_0 OP_PICK OP_4 OP_ROLL OP_DROP OP_3 OP_ROLL OP_3 OP_ROLL OP_3 OP_ROLL OP_2 OP_PICK OP_6 OP_PICK OP_5 OP_PICK OP_ADD OP_SPLIT OP_DROP OP_6 OP_PICK OP_SPLIT OP_NIP OP_2 OP_ROLL OP_DROP OP_1 OP_ROLL OP_ELSE OP_0 OP_PICK 4c OP_NUMEQUAL OP_IF OP_2 OP_PICK OP_6 OP_PICK OP_1 OP_ADD OP_SPLIT OP_DROP OP_6 OP_PICK OP_SPLIT OP_NIP OP_NOP OP_0 OP_PICK 00 OP_CAT OP_BIN2NUM OP_1 OP_ROLL OP_DROP OP_NOP OP_4 OP_ROLL OP_DROP OP_3 OP_ROLL OP_3 OP_ROLL OP_3 OP_ROLL OP_5 OP_PICK OP_1 OP_ADD OP_6 OP_ROLL OP_DROP OP_5 OP_ROLL OP_5 OP_ROLL OP_5 OP_ROLL OP_5 OP_ROLL OP_5 OP_ROLL OP_5 OP_PICK OP_DROP OP_2 OP_PICK OP_6 OP_PICK OP_5 OP_PICK OP_ADD OP_SPLIT OP_DROP OP_6 OP_PICK OP_SPLIT OP_NIP OP_2 OP_ROLL OP_DROP OP_1 OP_ROLL OP_ELSE OP_0 OP_PICK 4d OP_NUMEQUAL OP_IF OP_2 OP_PICK OP_6 OP_PICK OP_2 OP_ADD OP_SPLIT OP_DROP OP_6 OP_PICK OP_SPLIT OP_NIP OP_NOP OP_0 OP_PICK 00 OP_CAT OP_BIN2NUM OP_1 OP_ROLL OP_DROP OP_NOP OP_4 OP_ROLL OP_DROP OP_3 OP_ROLL OP_3 OP_ROLL OP_3 OP_ROLL OP_5 OP_PICK OP_2 OP_ADD OP_6 OP_ROLL OP_DROP OP_5 OP_ROLL OP_5 OP_ROLL OP_5 OP_ROLL OP_5 OP_ROLL OP_5 OP_ROLL OP_5 OP_PICK OP_DROP OP_2 OP_PICK OP_6 OP_PICK OP_5 OP_PICK OP_ADD OP_SPLIT OP_DROP OP_6 OP_PICK OP_SPLIT OP_NIP OP_2 OP_ROLL OP_DROP OP_1 OP_ROLL OP_ELSE OP_0 OP_PICK 4e OP_NUMEQUAL OP_IF OP_2 OP_PICK OP_6 OP_PICK OP_4 OP_ADD OP_SPLIT OP_DROP OP_6 OP_PICK OP_SPLIT OP_NIP OP_NOP OP_0 OP_PICK 00 OP_CAT OP_BIN2NUM OP_1 OP_ROLL OP_DROP OP_NOP OP_4 OP_ROLL OP_DROP OP_3 OP_ROLL OP_3 OP_ROLL OP_3 OP_ROLL OP_5 OP_PICK OP_4 OP_ADD OP_6 OP_ROLL OP_DROP OP_5 OP_ROLL OP_5 OP_ROLL OP_5 OP_ROLL OP_5 OP_ROLL OP_5 OP_ROLL OP_5 OP_PICK OP_DROP OP_2 OP_PICK OP_6 OP_PICK OP_5 OP_PICK OP_ADD OP_SPLIT OP_DROP OP_6 OP_PICK OP_SPLIT OP_NIP OP_2 OP_ROLL OP_DROP OP_1 OP_ROLL OP_ELSE OP_0 OP_VERIFY OP_ENDIF OP_ENDIF OP_ENDIF OP_ENDIF OP_5 OP_PICK OP_4 OP_PICK OP_ADD OP_6 OP_ROLL OP_DROP OP_5 OP_ROLL OP_5 OP_ROLL OP_5 OP_ROLL OP_5 OP_ROLL OP_5 OP_ROLL OP_5 OP_PICK OP_DROP OP_1 OP_PICK OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_NOP OP_BIN2NUM OP_NOP OP_7 OP_ROLL OP_DROP OP_6 OP_ROLL OP_6 OP_ROLL OP_6 OP_ROLL OP_6 OP_ROLL OP_6 OP_ROLL OP_6 OP_ROLL OP_ENDIF OP_6 OP_PICK OP_1 OP_ADD OP_7 OP_ROLL OP_DROP OP_6 OP_ROLL OP_6 OP_ROLL OP_6 OP_ROLL OP_6 OP_ROLL OP_6 OP_ROLL OP_6 OP_ROLL OP_6 OP_PICK OP_DROP OP_12 OP_PICK OP_NOP OP_0 OP_PICK OP_NOP OP_0 OP_PICK OP_12 OP_PICK OP_12 OP_PICK 0ac407f0e4bd44bfc207355a778b046225a7068fc59ee7eda43ad905aadbffc800 6c266b30e6a1319c66dc401e5bd6b432ba49688eecd118297041da8074ce0810 OP_14 OP_PICK 13 OP_PICK 13 OP_PICK OP_OR OP_NOP OP_6 OP_PICK OP_HASH256 OP_0 OP_PICK OP_NOP OP_0 OP_PICK OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT 00 OP_CAT OP_BIN2NUM OP_1 OP_ROLL OP_DROP OP_NOP OP_7 OP_PICK OP_6 OP_PICK OP_6 OP_PICK OP_6 OP_PICK OP_6 OP_PICK OP_NOP OP_3 OP_PICK OP_6 OP_PICK OP_4 OP_PICK OP_7 OP_PICK OP_MUL OP_ADD OP_MUL 414136d08c5ed2bf3ba048afe6dcaebafeffffffffffffffffffffffffffffff00 OP_1 OP_PICK OP_1 OP_PICK OP_NOP OP_1 OP_PICK OP_1 OP_PICK OP_MOD OP_0 OP_PICK OP_0 OP_LESSTHAN OP_IF OP_0 OP_PICK OP_2 OP_PICK OP_ADD OP_ELSE OP_0 OP_PICK OP_ENDIF OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_NOP OP_2 OP_ROLL OP_DROP OP_1 OP_ROLL OP_1 OP_PICK OP_1 OP_PICK OP_2 OP_DIV OP_GREATERTHAN OP_IF OP_0 OP_PICK OP_2 OP_PICK OP_SUB OP_2 OP_ROLL OP_DROP OP_1 OP_ROLL OP_ENDIF OP_3 OP_PICK OP_SIZE OP_NIP OP_2 OP_PICK OP_SIZE OP_NIP OP_3 OP_PICK 20 OP_NUM2BIN OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_1 OP_SPLIT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT OP_SWAP OP_CAT 20 OP_2 OP_PICK OP_SUB OP_SPLIT OP_NIP OP_4 OP_3 OP_PICK OP_ADD OP_2 OP_PICK OP_ADD 30 OP_1 OP_PICK OP_CAT OP_2 OP_CAT OP_4 OP_PICK OP_CAT OP_8 OP_PICK OP_CAT OP_2 OP_CAT OP_3 OP_PICK OP_CAT OP_2 OP_PICK OP_CAT OP_7 OP_PICK OP_CAT OP_0 OP_PICK OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_NOP OP_0 OP_PICK OP_7 OP_PICK OP_CHECKSIG OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_NOP OP_1 OP_ROLL OP_DROP OP_NOP OP_VERIFY OP_NOP OP_0 OP_NOP OP_0 OP_PICK OP_IF OP_1 OP_ELSE 00 OP_ENDIF OP_1 OP_ROLL OP_DROP OP_NOP OP_8 OP_PICK OP_NOP OP_0 OP_PICK OP_0 OP_NUMEQUAL OP_IF 00 OP_ELSE OP_0 OP_PICK OP_ENDIF OP_NOP OP_0 OP_PICK OP_SIZE OP_NIP OP_0 OP_1 OP_PICK 4c OP_LESSTHAN OP_IF OP_1 OP_PICK OP_1 OP_NOP OP_1 OP_PICK OP_1 OP_PICK OP_1 OP_ADD OP_NUM2BIN OP_0 OP_PICK OP_1 OP_PICK OP_SIZE OP_NIP OP_1 OP_SUB OP_SPLIT OP_DROP OP_0 OP_SPLIT OP_NIP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_NOP OP_1 OP_ROLL OP_DROP OP_ELSE OP_1 OP_PICK 0001 OP_LESSTHAN OP_IF 4c OP_2 OP_PICK OP_1 OP_NOP OP_1 OP_PICK OP_1 OP_PICK OP_1 OP_ADD OP_NUM2BIN OP_0 OP_PICK OP_1 OP_PICK OP_SIZE OP_NIP OP_1 OP_SUB OP_SPLIT OP_DROP OP_0 OP_SPLIT OP_NIP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_NOP OP_CAT OP_1 OP_ROLL OP_DROP OP_ELSE OP_1 OP_PICK 000001 OP_LESSTHAN OP_IF 4d OP_2 OP_PICK OP_2 OP_NOP OP_1 OP_PICK OP_1 OP_PICK OP_1 OP_ADD OP_NUM2BIN OP_0 OP_PICK OP_1 OP_PICK OP_SIZE OP_NIP OP_1 OP_SUB OP_SPLIT OP_DROP OP_0 OP_SPLIT OP_NIP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_NOP OP_CAT OP_1 OP_ROLL OP_DROP OP_ELSE OP_1 OP_PICK 0000000001 OP_LESSTHAN OP_IF 4e OP_2 OP_PICK OP_4 OP_NOP OP_1 OP_PICK OP_1 OP_PICK OP_1 OP_ADD OP_NUM2BIN OP_0 OP_PICK OP_1 OP_PICK OP_SIZE OP_NIP OP_1 OP_SUB OP_SPLIT OP_DROP OP_0 OP_SPLIT OP_NIP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_NOP OP_CAT OP_1 OP_ROLL OP_DROP OP_ELSE OP_0 OP_VERIFY OP_ENDIF OP_ENDIF OP_ENDIF OP_ENDIF OP_0 OP_PICK OP_3 OP_PICK OP_CAT OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_NOP OP_1 OP_ROLL OP_DROP OP_NOP OP_CAT OP_7 OP_PICK OP_1 OP_PICK OP_NOP OP_0 OP_PICK OP_SIZE OP_NIP OP_4 OP_NUM2BIN OP_1 OP_PICK OP_1 OP_PICK OP_CAT OP_0 OP_1 OP_NUM2BIN OP_CAT OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_NOP OP_CAT OP_1 OP_ROLL OP_DROP OP_NOP OP_0 OP_PICK OP_2 OP_PICK OP_NOP OP_0 OP_PICK OP_NOP OP_0 OP_PICK OP_SIZE OP_NIP OP_1 OP_PICK OP_1 OP_PICK 2c OP_SUB OP_SPLIT OP_DROP OP_1 OP_PICK 34 OP_SUB OP_SPLIT OP_NIP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_NOP OP_NOP OP_0 OP_PICK 00 OP_CAT OP_BIN2NUM OP_1 OP_ROLL OP_DROP OP_NOP OP_1 OP_ROLL OP_DROP OP_NOP OP_NOP OP_0 OP_PICK OP_8 OP_NUM2BIN OP_2 OP_PICK OP_NOP OP_0 OP_PICK OP_SIZE OP_NIP OP_0 OP_1 OP_PICK fd00 OP_LESSTHAN OP_IF OP_1 OP_PICK OP_1 OP_NOP OP_1 OP_PICK OP_1 OP_PICK OP_1 OP_ADD OP_NUM2BIN OP_0 OP_PICK OP_1 OP_PICK OP_SIZE OP_NIP OP_1 OP_SUB OP_SPLIT OP_DROP OP_0 OP_SPLIT OP_NIP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_NOP OP_1 OP_ROLL OP_DROP OP_ELSE OP_1 OP_PICK 000001 OP_LESSTHAN OP_IF fd OP_2 OP_PICK OP_2 OP_NOP OP_1 OP_PICK OP_1 OP_PICK OP_1 OP_ADD OP_NUM2BIN OP_0 OP_PICK OP_1 OP_PICK OP_SIZE OP_NIP OP_1 OP_SUB OP_SPLIT OP_DROP OP_0 OP_SPLIT OP_NIP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_NOP OP_CAT OP_1 OP_ROLL OP_DROP OP_ELSE OP_1 OP_PICK 0000000001 OP_LESSTHAN OP_IF fe OP_2 OP_PICK OP_4 OP_NOP OP_1 OP_PICK OP_1 OP_PICK OP_1 OP_ADD OP_NUM2BIN OP_0 OP_PICK OP_1 OP_PICK OP_SIZE OP_NIP OP_1 OP_SUB OP_SPLIT OP_DROP OP_0 OP_SPLIT OP_NIP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_NOP OP_CAT OP_1 OP_ROLL OP_DROP OP_ELSE OP_1 OP_PICK 000000000000000001 OP_LESSTHAN OP_IF ff OP_2 OP_PICK OP_8 OP_NOP OP_1 OP_PICK OP_1 OP_PICK OP_1 OP_ADD OP_NUM2BIN OP_0 OP_PICK OP_1 OP_PICK OP_SIZE OP_NIP OP_1 OP_SUB OP_SPLIT OP_DROP OP_0 OP_SPLIT OP_NIP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_NOP OP_CAT OP_1 OP_ROLL OP_DROP OP_ENDIF OP_ENDIF OP_ENDIF OP_ENDIF OP_0 OP_PICK OP_3 OP_PICK OP_CAT OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_NOP OP_CAT OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_NOP OP_0 OP_PICK OP_HASH256 OP_3 OP_PICK OP_NOP OP_0 OP_PICK OP_SIZE OP_NIP OP_1 OP_PICK OP_1 OP_PICK OP_8 OP_SUB OP_SPLIT OP_DROP OP_1 OP_PICK 28 OP_SUB OP_SPLIT OP_NIP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_NOP OP_EQUAL OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_1 OP_ROLL OP_DROP OP_NOP OP_NIP OP_NIP OP_NIP OP_NIP OP_NIP OP_NIP OP_NIP OP_NIP OP_NIP OP_NIP OP_NIP OP_NIP OP_NIP "
  }
}
```

{% endtab %}
{% endtabs %}
