Skip to content

Commit 47bc7c0

Browse files
committed
Add airdrop script
1 parent 37db3e6 commit 47bc7c0

3 files changed

Lines changed: 135 additions & 2 deletions

File tree

Anchor.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ wallet = "~/.config/solana/id.json"
2424
initialize_vault = "yarn run tsc scripts/initializeVault.ts --esModuleInterop --resolveJsonModule && node scripts/initializeVault.js"
2525
clob = "yarn run tsc scripts/clob.ts --esModuleInterop --resolveJsonModule && node scripts/clob.js && rm scripts/clob.js"
2626
autocrat_v0 = "yarn run ts-node scripts/autocratV0.ts"
27+
airdrop = "yarn run ts-node scripts/airdrop.ts"
2728
test = "yarn run ts-mocha -p ./tsconfig.json -t 1000000 tests/*.ts"
2829

2930
[test]

scripts/airdrop.ts

Lines changed: 132 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,132 @@
1+
import * as anchor from "@coral-xyz/anchor";
2+
import * as token from "@solana/spl-token";
3+
const { PublicKey, Keypair, SystemProgram } = anchor.web3;
4+
const { BN, Program } = anchor;
5+
6+
const provider = anchor.AnchorProvider.env();
7+
anchor.setProvider(provider);
8+
9+
const payer = provider.wallet["payer"];
10+
11+
const cyberCapitalists = [
12+
"8Cwx4yR2sFAC5Pdx2NgGHxCk1gJrtSTxJoyqVonqndhq",
13+
"65U66fcYuNfqN12vzateJhZ4bgDuxFWN9gMwraeQKByg",
14+
"2fhVRoaTnsTumWr1PcYmeNzgy23nFRHSwZibqrgTffwd",
15+
"GMUb3TxU5f5ccyd3Tq8fwHqHbbqUDUQSLsYE3EG6YTn6",
16+
"HKcXZAkT4ec2VBzGNxazWhpV7BTk3frQpSufpaNoho3D",
17+
"2K9ZpC3LVqRfR8Vveo92LhiofbDcF6PuDRJbaPp9V34m",
18+
"UuGEwN9aeh676ufphbavfssWVxH7BJCqacq1RYhco8e",
19+
"C9pM5oPokgQb2KHwUt2MucCbfiGHRxXUwjd2W4Z9czJ2",
20+
"8ddc12hR2ePg4UkkWcecd9ShcNJyHrkBpLDjd8Yjn4GG",
21+
"EyuaQkc2UtC4WveD6JjT37ke6xL2Cxz43jmdCC7QXZQE",
22+
"5f2by8aDjTdt3TZznzUbAFPyqZHKwstVDQjEsw4qbEYj",
23+
"9ZMrcxM21yj3CvDaNww2ibdt4LxUbvb1EmdpWSmHsncQ",
24+
"BYeFEm6n4rUDpyHzDjt5JF8okGpoZUdS2Y4jJM2dJCm4",
25+
"qodhTms2ojNCZTjxbE4DNypzzanTHD5tMLGmSkgqRZb",
26+
"DJrUfgsWeqFGDaXLdbx7ibFwxAJvAX6dvNfRCgHrhFpt",
27+
];
28+
29+
const technoAnalysts = [
30+
"2KpCd6yrCW3czNG9MH67QJ9whH7MXCD57hKNjDh51drb",
31+
"As63vJGYr8q3rZ2CrazfwMMNKHvfaosvaCmyRpAUz6KQ",
32+
"2qLWeNrV7QkHQvKBoEvXrKeLqEB2ZhscZd4ds7X2JUhn",
33+
"3PKhzE9wuEkGPHHu2sNCvG86xNtDJduAcyBPXpE6cSNt",
34+
"7uixr2n3aawRYFKu5L6Wjwf37Fe6Twh6Ns3upAPq9H7k",
35+
"HeYiTogWrqkCzAtGxwZSE6c4vASTEDeWekaGNw12NDf",
36+
"2REbnaK4fqpvH6uCN2nDSYe1LnKHB2Eocat7ifKUp8H2",
37+
"fk9QHmwHPpVoYydyHuopdvsoQffcgtttRLbJzSweH6X",
38+
"5jiQmWXnn7DWAp4iCYhRFMJnRRo3Vq1qvBh8TEao4E4D",
39+
"2xPi4mScQeyXk666VX3XAKoRgvtdyVLkzhg3NsPvrPTu",
40+
"7pPJt2xoEoPy8x8Hf2D6U6oLfNa5uKmHHRwkENVoaxmA",
41+
"J3X9s1G2aCRBi5e9mBuK9AxgBQemMSmX7Twp6b5UkRx4",
42+
"G5djAbi3DrZzrVmizfYteMpChyDV1nxqg2V77ftWpXKb",
43+
"5teVpxsERcfTDt7bSshLo21N4p5tRYfhNhL2b3PePCfy",
44+
"BcgYRPQC4mE3e195FmTx4mspmGbDx5xdcdKuLwNG89ov",
45+
"85CG4xpWqCLx6xKdR2SztPEfnh3oFkrFJs38bakTu7a7",
46+
"BADqAHSAXSV9yYT8kwyCmVhqX88UT4LViY9bozLr7XFr",
47+
"En5opU25LPm6GrHWLa3osBuPTSg3QyUg5EM1RR9sgfLn",
48+
"4VWRzPXpLqTRk66oKZiubq5jRcfwy9B1d1xRCmyvyxou",
49+
"Ev7kp4NfhVjvUqKMwhKCcvXRb2t828gDaSqWsD2gtPzT",
50+
"6VsPtfzuDabgbqodS75RD6yJRuryRB9on3AdywoRzJqH",
51+
"G2ocErqfp9Youi4yLW1Ag5XyEaMv3aGwGTjqbnEBQMs7",
52+
"6PqbMrA7PiGvNqvbyNTtJ29sS1QeSEVdmQ217LzBKmDe",
53+
"DMYmbEDY7L5RaNPZdGGk81GvMBfsiBQf4sKrtvLMVuCF",
54+
"6M1zVyfxQeyJ2HoesoAVXYjuG51MjCN58o2d7tG4iRC",
55+
"skynetDj29GH6o6bAqoixCpDuYtWqi1rm8ZNx1hB3vq",
56+
"F4KWGvT7woChii61HVj6hu1PAWWTKYS9u81sAeEszg2u",
57+
"ELE2KdFEUEjP3mEcFjfdbixQQ4UdctFGureygURHWg7f",
58+
"Cx8dCc33rWVu6VSBtNLaXyN17JjkSdEUGZvRkxkfzwsV",
59+
"GazTuZbs9ATANW3wAq2xg6Rc2cFDXmm3hweeuBKJzXrF",
60+
"ph2P85HjyReb1F33vM2XrxuVaVaR2drdV7SquBuwqGJ",
61+
"AiXexmUUiEq9oaaXsGHfFwjX32whTx8tMMXVaGfrrQJd",
62+
"FT2dv3yNxSjTkF2zUytWycZCwXc68xUmLNgkH8ugTaX6",
63+
"FfTDZaqQiSEtuLeaRZnZ2GHmkqRUxcnpEXbea5JWrhRp",
64+
"G1p59D3CScwE9r31RNFsGm3q5xZapt6EXHmtHV7Jq5AS",
65+
"En5opU25LPm6GrHWLa3osBuPTSg3QyUg5EM1RR9sgfLn",
66+
"CKKqtVFVjzdHvmxRUG6BzRsNTu6sZTgHsuBRWg5XQ1WS",
67+
"3jpph7Xjohc1sxXpgPhKz38Yng7x7gi9aDmXSCCsWyK6",
68+
"4ARYaJ6ER7VgWDBZmisazgL7R6PwzjAJhwpknQV3f2EQ",
69+
"AQjwvtpgZRSy2dmS9ztGZgbQDu7xM9abrin3wSqKRD1r",
70+
"844fKP7j6XuUgVffVzhmSSZLYSQdmiL6G8uZpXvD5NXu",
71+
"robrerZh1xEKpEVpA6XbfZ6UKAHkg94RTh4UjZ3acPV",
72+
"2pzXYcf1gNkS1QdJKGDLg8Cd1AFNMgBt7xLyiWrNZcJb",
73+
"EGNPfLtNe4WAcAQpnNwmehmEANCgj7FnqLUHfT54eVgV",
74+
];
75+
76+
async function main() {
77+
const META = new anchor.web3.PublicKey("METADDFL6wWMWEoKTFJwcThTbUmtarRJZjRpzUvkxhr");
78+
79+
const senderAcc = await token.getOrCreateAssociatedTokenAccount(
80+
provider.connection,
81+
payer,
82+
META,
83+
payer.publicKey,
84+
);
85+
86+
for (let receiver of cyberCapitalists) {
87+
const CYBER_CAPITALIST_META = 333 * 1_000_000_000;
88+
89+
let receiverPubkey = new anchor.web3.PublicKey(receiver);
90+
91+
const receiverAcc = await token.getOrCreateAssociatedTokenAccount(
92+
provider.connection,
93+
payer,
94+
META,
95+
receiverPubkey
96+
);
97+
98+
await token.transfer(
99+
provider.connection,
100+
payer,
101+
senderAcc.address,
102+
receiverAcc.address,
103+
payer,
104+
CYBER_CAPITALIST_META
105+
);
106+
}
107+
108+
for (let receiver of technoAnalysts) {
109+
const TECHNO_ANALYST_META = 113 * 1_000_000_000;
110+
111+
let receiverPubkey = new anchor.web3.PublicKey(receiver);
112+
113+
const receiverAcc = await token.getOrCreateAssociatedTokenAccount(
114+
provider.connection,
115+
payer,
116+
META,
117+
receiverPubkey
118+
);
119+
120+
await token.transfer(
121+
provider.connection,
122+
payer,
123+
senderAcc.address,
124+
receiverAcc.address,
125+
payer,
126+
TECHNO_ANALYST_META
127+
);
128+
}
129+
}
130+
131+
main();
132+
// const storedDAO = await autocratProgram.account.dao.fetch(dao);

scripts/autocratV0.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -321,7 +321,7 @@ async function placeOrdersOnBothSides(twapMarket: any) {
321321
side: Side.Bid,
322322
priceLots: new BN(9_000), // 1 USDC for 1 META
323323
maxBaseLots: new BN(10),
324-
maxQuoteLotsIncludingFees: new BN(10 * 10_000), // 10 USDC
324+
maxQuoteLotsIncludingFees: new BN(10 * 1000_000), // 10 USDC
325325
clientOrderId: new BN(1),
326326
orderType: OrderType.Limit,
327327
expiryTimestamp: new BN(0),
@@ -416,7 +416,7 @@ async function placeTakeOrder(twapMarket: any) {
416416
let buyArgs: PlaceOrderArgs = {
417417
side: Side.Bid,
418418
priceLots: new BN(13_000), // 1 USDC for 1 META
419-
maxBaseLots: new BN(1),
419+
maxBaseLots: new BN(10000),
420420
maxQuoteLotsIncludingFees: new BN(1 * 13_000), // 10 USDC
421421
clientOrderId: new BN(1),
422422
orderType: OrderType.Market,

0 commit comments

Comments
 (0)