@@ -38,7 +38,7 @@ convention around wallet address to token account mapping and funding.
38
38
39
39
The ` spl-token ` command-line utility can be used to experiment with SPL
40
40
tokens. Once you have [ Rust installed] ( https://rustup.rs/ ) , run:
41
- ``` sh
41
+ ``` console
42
42
$ cargo install spl-token-cli
43
43
```
44
44
@@ -50,11 +50,8 @@ The `spl-token` configuration is shared with the `solana` command-line tool.
50
50
51
51
#### Current Configuration
52
52
53
- ```
54
- solana config get
55
- ```
56
-
57
- ```
53
+ ``` console
54
+ $ solana config get
58
55
Config File: ${HOME}/.config/solana/cli/config.yml
59
56
RPC URL: https://api.mainnet-beta.solana.com
60
57
WebSocket URL: wss://api.mainnet-beta.solana.com/ (computed)
@@ -64,8 +61,8 @@ Keypair Path: ${HOME}/.config/solana/id.json
64
61
#### Cluster RPC URL
65
62
66
63
See [ Solana clusters] ( https://docs.solana.com/clusters ) for cluster-specific RPC URLs
67
- ```
68
- solana config set --url https://api.devnet.solana.com
64
+ ``` console
65
+ $ solana config set --url https://api.devnet.solana.com
69
66
```
70
67
71
68
#### Default Keypair
@@ -74,27 +71,27 @@ See [Keypair conventions](https://docs.solana.com/cli/conventions#keypair-conven
74
71
for information on how to setup a keypair if you don't already have one.
75
72
76
73
Keypair File
77
- ```
78
- solana config set --keypair ${HOME}/new-keypair.json
74
+ ``` console
75
+ $ solana config set --keypair ${HOME} /new-keypair.json
79
76
```
80
77
81
78
Hardware Wallet URL (See [ URL spec] ( https://docs.solana.com/wallet-guide/hardware-wallets#specify-a-keypair-url ) )
82
- ```
83
- solana config set --keypair usb://ledger/
79
+ ``` console
80
+ $ solana config set --keypair usb://ledger/
84
81
```
85
82
86
83
#### Airdrop SOL
87
84
88
85
Creating tokens and accounts requires SOL for account rent deposits and
89
86
transaction fees. If the cluster you are targeting offers a faucet, you can get
90
87
a little SOL for testing:
91
- ```
92
- solana airdrop 1
88
+ ``` console
89
+ $ solana airdrop 1
93
90
```
94
91
95
92
### Example: Creating your own fungible token
96
93
97
- ``` sh
94
+ ``` console
98
95
$ spl-token create-token
99
96
Creating token AQoKYV7tYpTrFZN6P5oUufbQKAUr9mNYGe1TTJC9wajM
100
97
Signature: 47hsLFxWRCg8azaZZPSnQR8DNTRsGyPNfUK7jqyzgt7wf9eag3nSnewqoZrVZHKm8zt3B6gzxhr91gdQ5qYrsRG4
@@ -103,27 +100,27 @@ Signature: 47hsLFxWRCg8azaZZPSnQR8DNTRsGyPNfUK7jqyzgt7wf9eag3nSnewqoZrVZHKm8zt3B
103
100
The unique identifier of the token is ` AQoKYV7tYpTrFZN6P5oUufbQKAUr9mNYGe1TTJC9wajM ` .
104
101
105
102
Tokens when initially created by ` spl-token ` have no supply:
106
- ``` sh
107
- spl-token supply AQoKYV7tYpTrFZN6P5oUufbQKAUr9mNYGe1TTJC9wajM
103
+ ``` console
104
+ $ spl-token supply AQoKYV7tYpTrFZN6P5oUufbQKAUr9mNYGe1TTJC9wajM
108
105
0
109
106
```
110
107
111
108
Let's mint some. First create an account to hold a balance of the new
112
109
` AQoKYV7tYpTrFZN6P5oUufbQKAUr9mNYGe1TTJC9wajM ` token:
113
- ``` sh
110
+ ``` console
114
111
$ spl-token create-account AQoKYV7tYpTrFZN6P5oUufbQKAUr9mNYGe1TTJC9wajM
115
112
Creating account 7UX2i7SucgLMQcfZ75s3VXmZZY4YRUyJN9X1RgfMoDUi
116
113
Signature: 42Sa5eK9dMEQyvD9GMHuKxXf55WLZ7tfjabUKDhNoZRAxj9MsnN7omriWMEHXLea3aYpjZ862qocRLVikvkHkyfy
117
114
```
118
115
119
116
` 7UX2i7SucgLMQcfZ75s3VXmZZY4YRUyJN9X1RgfMoDUi ` is now an empty account:
120
- ``` sh
117
+ ``` console
121
118
$ spl-token balance AQoKYV7tYpTrFZN6P5oUufbQKAUr9mNYGe1TTJC9wajM
122
119
0
123
120
```
124
121
125
122
Mint 100 tokens into the account:
126
- ``` sh
123
+ ``` console
127
124
$ spl-token mint AQoKYV7tYpTrFZN6P5oUufbQKAUr9mNYGe1TTJC9wajM 100
128
125
Minting 100 tokens
129
126
Token: AQoKYV7tYpTrFZN6P5oUufbQKAUr9mNYGe1TTJC9wajM
@@ -132,16 +129,19 @@ Signature: 41mARH42fPkbYn1mvQ6hYLjmJtjW98NXwd6pHqEYg9p8RnuoUsMxVd16RkStDHEzcS2sf
132
129
```
133
130
134
131
The token ` supply ` and account ` balance ` now reflect the result of minting:
135
- ``` sh
132
+ ``` console
136
133
$ spl-token supply AQoKYV7tYpTrFZN6P5oUufbQKAUr9mNYGe1TTJC9wajM
137
134
100
135
+ ```
136
+
137
+ ``` console
138
138
$ spl-token balance AQoKYV7tYpTrFZN6P5oUufbQKAUr9mNYGe1TTJC9wajM
139
139
100
140
140
```
141
141
142
142
### Example: View all Tokens that you own
143
143
144
- ``` sh
144
+ ``` console
145
145
$ spl-token accounts
146
146
Token Balance
147
147
------------------------------------------------------------
@@ -153,14 +153,14 @@ AQoKYV7tYpTrFZN6P5oUufbQKAUr9mNYGe1TTJC9wajM 1 (Aux-2*)
153
153
154
154
### Example: Wrapping SOL in a Token
155
155
156
- ``` sh
156
+ ``` console
157
157
$ spl-token wrap 1
158
158
Wrapping 1 SOL into GJTxcnA5Sydy8YRhqvHxbQ5QNsPyRKvzguodQEaShJje
159
159
Signature: 4f4s5QVMKisLS6ihZcXXPbiBAzjnvkBcp2A7KKER7k9DwJ4qjbVsQBKv2rAyBumXC1gLn8EJQhwWkybE4yJGnw2Y
160
160
```
161
161
162
162
To unwrap the Token back to SOL:
163
- ```
163
+ ``` console
164
164
$ spl-token unwrap GJTxcnA5Sydy8YRhqvHxbQ5QNsPyRKvzguodQEaShJje
165
165
Unwrapping GJTxcnA5Sydy8YRhqvHxbQ5QNsPyRKvzguodQEaShJje
166
166
Amount: 1 SOL
@@ -174,7 +174,7 @@ token account for the Token type. Then the receiver obtains their wallet
174
174
address by running ` solana address ` and provides it to the sender.
175
175
176
176
The sender then runs:
177
- ```
177
+ ``` console
178
178
$ spl-token transfer AQoKYV7tYpTrFZN6P5oUufbQKAUr9mNYGe1TTJC9wajM 50 vines1vzrYbzLMRdu58ou5XTby4qAqVRLmqo36NKPTg
179
179
Transfer 50 tokens
180
180
Sender: 7UX2i7SucgLMQcfZ75s3VXmZZY4YRUyJN9X1RgfMoDUi
@@ -192,7 +192,7 @@ The receiver obtains their wallet address by running `solana address` and provid
192
192
193
193
The sender then runs to fund the receiver's associated token account, at the
194
194
sender's expense, and then transfers 50 tokens into it:
195
- ```
195
+ ``` console
196
196
$ spl-token transfer --fund-recipient AQoKYV7tYpTrFZN6P5oUufbQKAUr9mNYGe1TTJC9wajM 50 vines1vzrYbzLMRdu58ou5XTby4qAqVRLmqo36NKPTg
197
197
Transfer 50 tokens
198
198
Sender: 7UX2i7SucgLMQcfZ75s3VXmZZY4YRUyJN9X1RgfMoDUi
@@ -207,27 +207,30 @@ Signature: 5a3qbvoJQnTAxGPHCugibZTbSu7xuTgkxvF4EJupRjRXGgZZrnWFmKzfEzcqKF2ogCaF4
207
207
Tokens may be transferred to a specific recipient token account. The recipient
208
208
token account must already exist and be of the same Token type.
209
209
210
- ```
210
+ ``` console
211
211
$ spl-token create-account AQoKYV7tYpTrFZN6P5oUufbQKAUr9mNYGe1TTJC9wajM /path/to/auxiliary_keypair.json
212
212
Creating account CqAxDdBRnawzx9q4PYM3wrybLHBhDZ4P6BTV13WsRJYJ
213
213
Signature: 4yPWj22mbyLu5mhfZ5WATNfYzTt5EQ7LGzryxM7Ufu7QCVjTE7czZdEBqdKR7vjKsfAqsBdjU58NJvXrTqCXvfWW
214
214
```
215
- ```
215
+
216
+ ``` console
216
217
$ spl-token accounts AQoKYV7tYpTrFZN6P5oUufbQKAUr9mNYGe1TTJC9wajM -v
217
218
Account Token Balance
218
219
--------------------------------------------------------------------------------------------------------
219
220
7UX2i7SucgLMQcfZ75s3VXmZZY4YRUyJN9X1RgfMoDUi AQoKYV7tYpTrFZN6P5oUufbQKAUr9mNYGe1TTJC9wajM 100
220
221
CqAxDdBRnawzx9q4PYM3wrybLHBhDZ4P6BTV13WsRJYJ AQoKYV7tYpTrFZN6P5oUufbQKAUr9mNYGe1TTJC9wajM 0 (Aux-1*)
221
222
```
222
- ```
223
+
224
+ ``` console
223
225
$ spl-token transfer 7UX2i7SucgLMQcfZ75s3VXmZZY4YRUyJN9X1RgfMoDUi 50 CqAxDdBRnawzx9q4PYM3wrybLHBhDZ4P6BTV13WsRJYJ
224
226
Transfer 50 tokens
225
227
Sender: 7UX2i7SucgLMQcfZ75s3VXmZZY4YRUyJN9X1RgfMoDUi
226
228
Recipient: CqAxDdBRnawzx9q4PYM3wrybLHBhDZ4P6BTV13WsRJYJ
227
229
228
230
Signature: 5a3qbvoJQnTAxGPHCugibZTbSu7xuTgkxvF4EJupRjRXGgZZrnWFmKzfEzcqKF2ogCaF4QKVbAtuFx7xGwrDUcGd
229
231
```
230
- ```
232
+
233
+ ``` console
231
234
$ spl-token accounts AQoKYV7tYpTrFZN6P5oUufbQKAUr9mNYGe1TTJC9wajM -v
232
235
Account Token Balance
233
236
--------------------------------------------------------------------------------------------------------
@@ -238,21 +241,21 @@ CqAxDdBRnawzx9q4PYM3wrybLHBhDZ4P6BTV13WsRJYJ AQoKYV7tYpTrFZN6P5oUufbQKAUr9mNYGe
238
241
### Example: Create a non-fungible token
239
242
240
243
Create the token type with nine decimal places,
241
- ```
244
+ ``` console
242
245
$ spl-token create-token --decimals 9
243
246
Creating token 559u4Tdr9umKwft3yHMsnAxohhzkFnUBPAFtibwuZD9z
244
247
Signature: 4kz82JUey1B9ki1McPW7NYv1NqPKCod6WNptSkYqtuiEsQb9exHaktSAHJJsm4YxuGNW4NugPJMFX9ee6WA2dXts
245
248
```
246
249
247
250
then create an account to hold tokens of this new type:
248
- ```
251
+ ``` console
249
252
$ spl-token create-account 559u4Tdr9umKwft3yHMsnAxohhzkFnUBPAFtibwuZD9z
250
253
Creating account 7KqpRwzkkeweW5jQoETyLzhvs9rcCj9dVQ1MnzudirsM
251
254
Signature: sjChze6ecaRtvuQVZuwURyg6teYeiH8ZwT6UTuFNKjrdayQQ3KNdPB7d2DtUZ6McafBfEefejHkJ6MWQEfVHLtC
252
255
```
253
256
254
257
Now mint only one token into the account,
255
- ```
258
+ ``` console
256
259
$ spl-token mint 559u4Tdr9umKwft3yHMsnAxohhzkFnUBPAFtibwuZD9z 1 7KqpRwzkkeweW5jQoETyLzhvs9rcCj9dVQ1MnzudirsM
257
260
Minting 1 tokens
258
261
Token: 559u4Tdr9umKwft3yHMsnAxohhzkFnUBPAFtibwuZD9z
@@ -261,7 +264,7 @@ Signature: 2Kzg6ZArQRCRvcoKSiievYy3sfPqGV91Whnz6SeimhJQXKBTYQf3E54tWg3zPpYLbcDex
261
264
```
262
265
263
266
and disable future minting:
264
- ```
267
+ ``` console
265
268
$ spl-token authorize 559u4Tdr9umKwft3yHMsnAxohhzkFnUBPAFtibwuZD9z mint --disable
266
269
Updating 559u4Tdr9umKwft3yHMsnAxohhzkFnUBPAFtibwuZD9z
267
270
Current mint authority: vines1vzrYbzLMRdu58ou5XTby4qAqVRLmqo36NKPTg
@@ -272,7 +275,7 @@ Signature: 5QpykLzZsceoKcVRRFow9QCdae4Dp2zQAcjebyEWoezPFg2Np73gHKWQicHG1mqRdXu3y
272
275
Now the ` 7KqpRwzkkeweW5jQoETyLzhvs9rcCj9dVQ1MnzudirsM ` account holds the
273
276
one and only ` 559u4Tdr9umKwft3yHMsnAxohhzkFnUBPAFtibwuZD9z ` token:
274
277
275
- ```
278
+ ``` console
276
279
$ spl-token account-info 559u4Tdr9umKwft3yHMsnAxohhzkFnUBPAFtibwuZD9z
277
280
278
281
Address: 7KqpRwzkkeweW5jQoETyLzhvs9rcCj9dVQ1MnzudirsM
@@ -284,7 +287,7 @@ Delegation: (not set)
284
287
Close authority: (not set)
285
288
```
286
289
287
- ```
290
+ ``` console
288
291
$ spl-token supply 559u4Tdr9umKwft3yHMsnAxohhzkFnUBPAFtibwuZD9z
289
292
1
290
293
```
@@ -313,7 +316,7 @@ account.
313
316
First create keypairs to act as the multisig signer-set. In reality, these can
314
317
be any supported signer, like: a Ledger hardware wallet, a keypair file, or
315
318
a paper wallet. For convenience, keypair files will be used in this example.
316
- ```
319
+ ``` console
317
320
$ for i in $( seq 3) ; do solana-keygen new --no-passphrase -so " signer-${i} .json" ; done
318
321
Wrote new keypair to signer-1.json
319
322
Wrote new keypair to signer-2.json
@@ -322,7 +325,7 @@ Wrote new keypair to signer-3.json
322
325
323
326
In order to create the multisig account, the public keys of the signer-set must
324
327
be collected.
325
- ```
328
+ ``` console
326
329
$ for i in $( seq 3) ; do SIGNER=" signer-${i} .json" ; echo " $SIGNER : $( solana-keygen pubkey " $SIGNER " ) " ; done
327
330
signer-1.json: BzWpkuRrwXHq4SSSFHa8FJf6DRQy4TaeoXnkA89vTgHZ
328
331
signer-2.json: DhkUfKgfZ8CF6PAGKwdABRL1VqkeNrTSRx8LZfpPFVNY
@@ -342,13 +345,15 @@ NOTE: SPL Token Multisig accounts are limited to a signer-set of eleven signers
342
345
```
343
346
$ spl-token create-multisig 2 BzWpkuRrwXHq4SSSFHa8FJf6DRQy4TaeoXnkA89vTgHZ \
344
347
DhkUfKgfZ8CF6PAGKwdABRL1VqkeNrTSRx8LZfpPFVNY D7ssXHrZJjfpZXsmDf8RwfPxe1BMMMmP1CtmX3WojPmG
348
+ ```
349
+ ``` console
345
350
Creating 2/3 multisig 46ed77fd4WTN144q62BwjU2B3ogX3Xmmc8PT5Z3Xc2re
346
351
Signature: 2FN4KXnczAz33SAxwsuevqrD1BvikP6LUhLie5Lz4ETt594X8R7yvMZzZW2zjmFLPsLQNHsRuhQeumExHbnUGC9A
347
352
```
348
353
349
354
Next create the token mint and receiving accounts
350
355
[ as previously described] ( #example-creating-your-own-fungible-token )
351
- ```
356
+ ``` console
352
357
$ spl-token create-token
353
358
Creating token 4VNVRJetwapjwYU8jf4qPgaCeD76wyz8DuNj8yMCQ62o
354
359
Signature: 3n6zmw3hS5Hyo5duuhnNvwjAbjzC42uzCA3TTsrgr9htUonzDUXdK1d8b8J77XoeSherqWQM8mD8E1TMYCpksS2r
@@ -359,7 +364,7 @@ Signature: 5mVes7wjE7avuFqzrmSCWneKBQyPAjasCLYZPNSkmqmk2YFosYWAP9hYSiZ7b7NKpV866
359
364
```
360
365
361
366
Then set the mint account's minting authority to the multisig account
362
- ```
367
+ ``` console
363
368
$ spl-token authorize 4VNVRJetwapjwYU8jf4qPgaCeD76wyz8DuNj8yMCQ62o mint 46ed77fd4WTN144q62BwjU2B3ogX3Xmmc8PT5Z3Xc2re
364
369
Updating 4VNVRJetwapjwYU8jf4qPgaCeD76wyz8DuNj8yMCQ62o
365
370
Current mint authority: 5hbZyJ3KRuFvdy5QBxvE9KwK17hzkAUkQHZTxPbiWffE
@@ -373,6 +378,8 @@ account, attempting to mint with one multisig signer fails
373
378
$ spl-token mint 4VNVRJetwapjwYU8jf4qPgaCeD76wyz8DuNj8yMCQ62o 1 EX8zyi2ZQUuoYtXd4MKmyHYLTjqFdWeuoTHcsTdJcKHC \
374
379
--owner 46ed77fd4WTN144q62BwjU2B3ogX3Xmmc8PT5Z3Xc2re \
375
380
--multisig-signer signer-1.json
381
+ ```
382
+ ``` console
376
383
Minting 1 tokens
377
384
Token: 4VNVRJetwapjwYU8jf4qPgaCeD76wyz8DuNj8yMCQ62o
378
385
Recipient: EX8zyi2ZQUuoYtXd4MKmyHYLTjqFdWeuoTHcsTdJcKHC
@@ -381,28 +388,43 @@ RPC response error -32002: Transaction simulation failed: Error processing Instr
381
388
382
389
But repeating with a second multisig signer, succeeds
383
390
```
384
- spl-token mint 4VNVRJetwapjwYU8jf4qPgaCeD76wyz8DuNj8yMCQ62o 1 EX8zyi2ZQUuoYtXd4MKmyHYLTjqFdWeuoTHcsTdJcKHC \
391
+ $ spl-token mint 4VNVRJetwapjwYU8jf4qPgaCeD76wyz8DuNj8yMCQ62o 1 EX8zyi2ZQUuoYtXd4MKmyHYLTjqFdWeuoTHcsTdJcKHC \
385
392
--owner 46ed77fd4WTN144q62BwjU2B3ogX3Xmmc8PT5Z3Xc2re \
386
393
--multisig-signer signer-1.json \
387
394
--multisig-signer signer-2.json
395
+ ```
396
+ ``` console
388
397
Minting 1 tokens
389
398
Token: 4VNVRJetwapjwYU8jf4qPgaCeD76wyz8DuNj8yMCQ62o
390
399
Recipient: EX8zyi2ZQUuoYtXd4MKmyHYLTjqFdWeuoTHcsTdJcKHC
391
400
Signature: 2ubqWqZb3ooDuc8FLaBkqZwzguhtMgQpgMAHhKsWcUzjy61qtJ7cZ1bfmYktKUfnbMYWTC1S8zdKgU6m4THsgspT
392
401
```
393
402
394
- ### Example: Mint with multisig authority and offline signers
403
+ ### Example: Offline signing with multisig
395
404
396
- This example builds off of the [ online mint with multisig ] ( #example-mint-with-multisig-authority )
397
- example. Be sure to familiarize yourself with that process, [ offline signing] ( https://docs.solana.com/offline-signing ) ,
398
- and the [ durable nonce ] ( https://docs.solana.com/offline-signing/durable-nonce )
399
- feature before continuing .
405
+ Sometimes online signing is not possible or desireable. Such is the case for example when signers are not in the same geographic location
406
+ or when they use air-gapped devices not connected to the network. In this case, we use offline signing which combines the
407
+ previous examples of [ multisig ] ( #example-mint-with-multisig-authority ) with [ offline signing ] ( https://docs.solana.com/offline-signing )
408
+ and a [ nonce account ] ( https://docs.solana.com/offline-signing/durable-nonce ) .
400
409
401
410
This example will use the same mint account, token account, multisig account,
402
- and multisig signer-set keypair filenames as the online example.
411
+ and multisig signer-set keypair filenames as the online example, as well as a nonce
412
+ account that we create here:
413
+
414
+ ``` console
415
+ $ solana-keygen new -o nonce-keypair.json
416
+ ...
417
+ ======================================================================
418
+ pubkey: Fjyud2VXixk2vCs4DkBpfpsq48d81rbEzh6deKt7WvPj
419
+ ======================================================================
420
+ ```
403
421
404
- A nonce account at ` Fjyud2VXixk2vCs4DkBpfpsq48d81rbEzh6deKt7WvPj ` will be used
422
+ ``` console
423
+ $ solana create-nonce-account nonce-keypair.json 1
424
+ Signature: 3DALwrAAmCDxqeb4qXZ44WjpFcwVtgmJKhV4MW5qLJVtWeZ288j6Pzz1F4BmyPpnGLfx2P8MEJXmqPchX5y2Lf3r
405
425
```
426
+
427
+ ``` console
406
428
$ solana nonce-account Fjyud2VXixk2vCs4DkBpfpsq48d81rbEzh6deKt7WvPj
407
429
Balance: 0.01 SOL
408
430
Minimum Balance Required: 0.00144768 SOL
@@ -433,6 +455,9 @@ $ spl-token mint 4VNVRJetwapjwYU8jf4qPgaCeD76wyz8DuNj8yMCQ62o 1 EX8zyi2ZQUuoYtXd
433
455
--nonce-authority 5hbZyJ3KRuFvdy5QBxvE9KwK17hzkAUkQHZTxPbiWffE \
434
456
--sign-only \
435
457
--mint-decimals 9
458
+ ```
459
+
460
+ ``` console
436
461
Minting 1 tokens
437
462
Token: 4VNVRJetwapjwYU8jf4qPgaCeD76wyz8DuNj8yMCQ62o
438
463
Recipient: EX8zyi2ZQUuoYtXd4MKmyHYLTjqFdWeuoTHcsTdJcKHC
@@ -447,7 +472,7 @@ Absent Signers (Pubkey):
447
472
Next each offline signer executes the template command, replacing each instance
448
473
of their public key with the corresponding keypair.
449
474
```
450
- spl-token mint 4VNVRJetwapjwYU8jf4qPgaCeD76wyz8DuNj8yMCQ62o 1 EX8zyi2ZQUuoYtXd4MKmyHYLTjqFdWeuoTHcsTdJcKHC \
475
+ $ spl-token mint 4VNVRJetwapjwYU8jf4qPgaCeD76wyz8DuNj8yMCQ62o 1 EX8zyi2ZQUuoYtXd4MKmyHYLTjqFdWeuoTHcsTdJcKHC \
451
476
--owner 46ed77fd4WTN144q62BwjU2B3ogX3Xmmc8PT5Z3Xc2re \
452
477
--multisig-signer signer-1.json \
453
478
--multisig-signer DhkUfKgfZ8CF6PAGKwdABRL1VqkeNrTSRx8LZfpPFVNY \
@@ -457,6 +482,8 @@ spl-token mint 4VNVRJetwapjwYU8jf4qPgaCeD76wyz8DuNj8yMCQ62o 1 EX8zyi2ZQUuoYtXd4M
457
482
--nonce-authority 5hbZyJ3KRuFvdy5QBxvE9KwK17hzkAUkQHZTxPbiWffE \
458
483
--sign-only \
459
484
--mint-decimals 9
485
+ ```
486
+ ``` console
460
487
Minting 1 tokens
461
488
Token: 4VNVRJetwapjwYU8jf4qPgaCeD76wyz8DuNj8yMCQ62o
462
489
Recipient: EX8zyi2ZQUuoYtXd4MKmyHYLTjqFdWeuoTHcsTdJcKHC
@@ -480,6 +507,8 @@ $ spl-token mint 4VNVRJetwapjwYU8jf4qPgaCeD76wyz8DuNj8yMCQ62o 1 EX8zyi2ZQUuoYtXd
480
507
--nonce-authority 5hbZyJ3KRuFvdy5QBxvE9KwK17hzkAUkQHZTxPbiWffE \
481
508
--sign-only \
482
509
--mint-decimals 9
510
+ ```
511
+ ``` console
483
512
Minting 1 tokens
484
513
Token: 4VNVRJetwapjwYU8jf4qPgaCeD76wyz8DuNj8yMCQ62o
485
514
Recipient: EX8zyi2ZQUuoYtXd4MKmyHYLTjqFdWeuoTHcsTdJcKHC
@@ -512,6 +541,8 @@ $ spl-token mint 4VNVRJetwapjwYU8jf4qPgaCeD76wyz8DuNj8yMCQ62o 1 EX8zyi2ZQUuoYtXd
512
541
--nonce-authority hot-wallet.json \
513
542
--signer BzWpkuRrwXHq4SSSFHa8FJf6DRQy4TaeoXnkA89vTgHZ=2QVah9XtvPAuhDB2QwE7gNaY962DhrGP6uy9zeN4sTWvY2xDUUzce6zkQeuT3xg44wsgtUw2H5Rf8pEArPSzJvHX \
514
543
--signer DhkUfKgfZ8CF6PAGKwdABRL1VqkeNrTSRx8LZfpPFVNY=2brZbTiCfyVYSCp6vZE3p7qCDeFf3z1JFmJHPBrz8SnWSDZPjbpjsW2kxFHkktTNkhES3y6UULqS4eaWztLW7FrU
544
+ ```
545
+ ``` console
515
546
Minting 1 tokens
516
547
Token: 4VNVRJetwapjwYU8jf4qPgaCeD76wyz8DuNj8yMCQ62o
517
548
Recipient: EX8zyi2ZQUuoYtXd4MKmyHYLTjqFdWeuoTHcsTdJcKHC
0 commit comments