@gitmyabi/coinbasesmartwallet 1.0.70 → 1.0.72
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -4
- package/contracts/{CoinbaseSmartWallet_json.d.ts → CoinbaseSmartWallet.d.ts} +15 -15
- package/contracts/{CoinbaseSmartWallet_json.js → CoinbaseSmartWallet.js} +13 -13
- package/contracts/{CoinbaseSmartWallet_json.ts → CoinbaseSmartWallet.ts} +23 -23
- package/contracts/index.d.ts +2 -2
- package/contracts/index.js +4 -4
- package/contracts/index.ts +2 -2
- package/package.json +4 -4
package/README.md
CHANGED
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
Auto-generated TypeScript type bindings for **CoinbaseSmartWallet**
|
|
4
4
|
|
|
5
|
-
- **Build ID**: `etherscan-coinbasesmartwallet-
|
|
5
|
+
- **Build ID**: `etherscan-coinbasesmartwallet-bdd78927-1793859262668`
|
|
6
6
|
- **Build Number**: 1
|
|
7
|
-
- **Commit**: `
|
|
7
|
+
- **Commit**: `415efbb`
|
|
8
8
|
- **Branch**: `etherscan`
|
|
9
9
|
- **Target**: `ethers-v6`
|
|
10
10
|
- **Contracts**: 1
|
|
@@ -12,7 +12,7 @@ Auto-generated TypeScript type bindings for **CoinbaseSmartWallet**
|
|
|
12
12
|
## Installation
|
|
13
13
|
|
|
14
14
|
```bash
|
|
15
|
-
npm install @gitmyabi/coinbasesmartwallet@1.0.
|
|
15
|
+
npm install @gitmyabi/coinbasesmartwallet@1.0.72
|
|
16
16
|
```
|
|
17
17
|
|
|
18
18
|
## Usage
|
|
@@ -105,4 +105,4 @@ This package includes type bindings for 1 contract(s) generated from ABI artifac
|
|
|
105
105
|
|
|
106
106
|
## License
|
|
107
107
|
|
|
108
|
-
|
|
108
|
+
Apache License 2.0
|
|
@@ -24,11 +24,11 @@ export type UserOperation = {
|
|
|
24
24
|
signature: `0x${string}`;
|
|
25
25
|
};
|
|
26
26
|
/**
|
|
27
|
-
*
|
|
27
|
+
* CoinbaseSmartWallet ABI
|
|
28
28
|
*
|
|
29
29
|
* This ABI is typed using viem's type system for full type safety.
|
|
30
30
|
*/
|
|
31
|
-
export declare const
|
|
31
|
+
export declare const CoinbaseSmartWalletAbi: readonly [{
|
|
32
32
|
readonly inputs: readonly [];
|
|
33
33
|
readonly stateMutability: "nonpayable";
|
|
34
34
|
readonly type: "constructor";
|
|
@@ -653,15 +653,15 @@ export declare const CoinbaseSmartWallet_jsonAbi: readonly [{
|
|
|
653
653
|
readonly type: "receive";
|
|
654
654
|
}];
|
|
655
655
|
/**
|
|
656
|
-
* Type-safe ABI for
|
|
656
|
+
* Type-safe ABI for CoinbaseSmartWallet
|
|
657
657
|
*/
|
|
658
|
-
export type
|
|
658
|
+
export type CoinbaseSmartWalletAbi = typeof CoinbaseSmartWalletAbi;
|
|
659
659
|
/**
|
|
660
|
-
* Contract instance type for
|
|
660
|
+
* Contract instance type for CoinbaseSmartWallet
|
|
661
661
|
*/
|
|
662
|
-
export type
|
|
662
|
+
export type CoinbaseSmartWalletContract = any;
|
|
663
663
|
/**
|
|
664
|
-
*
|
|
664
|
+
* CoinbaseSmartWallet Contract Class
|
|
665
665
|
*
|
|
666
666
|
* Provides a class-based API similar to TypeChain for interacting with the contract.
|
|
667
667
|
*
|
|
@@ -669,12 +669,12 @@ export type CoinbaseSmartWallet_jsonContract = any;
|
|
|
669
669
|
* ```typescript
|
|
670
670
|
* import { createPublicClient, createWalletClient, http } from 'viem';
|
|
671
671
|
* import { mainnet } from 'viem/chains';
|
|
672
|
-
* import {
|
|
672
|
+
* import { CoinbaseSmartWallet } from 'CoinbaseSmartWallet';
|
|
673
673
|
*
|
|
674
674
|
* const publicClient = createPublicClient({ chain: mainnet, transport: http() });
|
|
675
675
|
* const walletClient = createWalletClient({ chain: mainnet, transport: http() });
|
|
676
676
|
*
|
|
677
|
-
* const contract = new
|
|
677
|
+
* const contract = new CoinbaseSmartWallet('0x...', { publicClient, walletClient });
|
|
678
678
|
*
|
|
679
679
|
* // Read functions
|
|
680
680
|
* const result = await contract.balanceOf('0x...');
|
|
@@ -692,7 +692,7 @@ export type CoinbaseSmartWallet_jsonContract = any;
|
|
|
692
692
|
* });
|
|
693
693
|
* ```
|
|
694
694
|
*/
|
|
695
|
-
export declare class
|
|
695
|
+
export declare class CoinbaseSmartWallet {
|
|
696
696
|
private contract;
|
|
697
697
|
private contractAddress;
|
|
698
698
|
private publicClient;
|
|
@@ -705,9 +705,9 @@ export declare class CoinbaseSmartWallet_json {
|
|
|
705
705
|
*/
|
|
706
706
|
get address(): Address;
|
|
707
707
|
/**
|
|
708
|
-
* Get the underlying viem contract instance
|
|
708
|
+
* Get the underlying viem contract instance.
|
|
709
709
|
*/
|
|
710
|
-
getContract():
|
|
710
|
+
getContract(): CoinbaseSmartWalletContract;
|
|
711
711
|
/**
|
|
712
712
|
* REPLAYABLE_NONCE_KEY
|
|
713
713
|
* view
|
|
@@ -1166,7 +1166,7 @@ export declare class CoinbaseSmartWallet_json {
|
|
|
1166
1166
|
index: bigint;
|
|
1167
1167
|
owner: `0x${string}`;
|
|
1168
1168
|
}) => void, filter?: {
|
|
1169
|
-
index
|
|
1169
|
+
index?: bigint | bigint[] | null;
|
|
1170
1170
|
}) => () => void;
|
|
1171
1171
|
/**
|
|
1172
1172
|
* Watch RemoveOwner events
|
|
@@ -1178,7 +1178,7 @@ export declare class CoinbaseSmartWallet_json {
|
|
|
1178
1178
|
index: bigint;
|
|
1179
1179
|
owner: `0x${string}`;
|
|
1180
1180
|
}) => void, filter?: {
|
|
1181
|
-
index
|
|
1181
|
+
index?: bigint | bigint[] | null;
|
|
1182
1182
|
}) => () => void;
|
|
1183
1183
|
/**
|
|
1184
1184
|
* Watch Upgraded events
|
|
@@ -1189,7 +1189,7 @@ export declare class CoinbaseSmartWallet_json {
|
|
|
1189
1189
|
Upgraded: (callback: (event: {
|
|
1190
1190
|
implementation: `0x${string}`;
|
|
1191
1191
|
}) => void, filter?: {
|
|
1192
|
-
implementation
|
|
1192
|
+
implementation?: `0x${string}` | `0x${string}`[] | null;
|
|
1193
1193
|
}) => () => void;
|
|
1194
1194
|
};
|
|
1195
1195
|
}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.CoinbaseSmartWallet = exports.CoinbaseSmartWalletAbi = void 0;
|
|
4
4
|
const viem_1 = require("viem");
|
|
5
5
|
/**
|
|
6
|
-
*
|
|
6
|
+
* CoinbaseSmartWallet ABI
|
|
7
7
|
*
|
|
8
8
|
* This ABI is typed using viem's type system for full type safety.
|
|
9
9
|
*/
|
|
10
|
-
exports.
|
|
10
|
+
exports.CoinbaseSmartWalletAbi = [
|
|
11
11
|
{
|
|
12
12
|
"inputs": [],
|
|
13
13
|
"stateMutability": "nonpayable",
|
|
@@ -824,7 +824,7 @@ exports.CoinbaseSmartWallet_jsonAbi = [
|
|
|
824
824
|
}
|
|
825
825
|
];
|
|
826
826
|
/**
|
|
827
|
-
*
|
|
827
|
+
* CoinbaseSmartWallet Contract Class
|
|
828
828
|
*
|
|
829
829
|
* Provides a class-based API similar to TypeChain for interacting with the contract.
|
|
830
830
|
*
|
|
@@ -832,12 +832,12 @@ exports.CoinbaseSmartWallet_jsonAbi = [
|
|
|
832
832
|
* ```typescript
|
|
833
833
|
* import { createPublicClient, createWalletClient, http } from 'viem';
|
|
834
834
|
* import { mainnet } from 'viem/chains';
|
|
835
|
-
* import {
|
|
835
|
+
* import { CoinbaseSmartWallet } from 'CoinbaseSmartWallet';
|
|
836
836
|
*
|
|
837
837
|
* const publicClient = createPublicClient({ chain: mainnet, transport: http() });
|
|
838
838
|
* const walletClient = createWalletClient({ chain: mainnet, transport: http() });
|
|
839
839
|
*
|
|
840
|
-
* const contract = new
|
|
840
|
+
* const contract = new CoinbaseSmartWallet('0x...', { publicClient, walletClient });
|
|
841
841
|
*
|
|
842
842
|
* // Read functions
|
|
843
843
|
* const result = await contract.balanceOf('0x...');
|
|
@@ -855,13 +855,13 @@ exports.CoinbaseSmartWallet_jsonAbi = [
|
|
|
855
855
|
* });
|
|
856
856
|
* ```
|
|
857
857
|
*/
|
|
858
|
-
class
|
|
858
|
+
class CoinbaseSmartWallet {
|
|
859
859
|
constructor(address, clients) {
|
|
860
860
|
this.contractAddress = address;
|
|
861
861
|
this.publicClient = clients.publicClient;
|
|
862
862
|
this.contract = (0, viem_1.getContract)({
|
|
863
863
|
address,
|
|
864
|
-
abi: exports.
|
|
864
|
+
abi: exports.CoinbaseSmartWalletAbi,
|
|
865
865
|
client: {
|
|
866
866
|
public: clients.publicClient,
|
|
867
867
|
wallet: clients.walletClient,
|
|
@@ -875,7 +875,7 @@ class CoinbaseSmartWallet_json {
|
|
|
875
875
|
return this.contractAddress;
|
|
876
876
|
}
|
|
877
877
|
/**
|
|
878
|
-
* Get the underlying viem contract instance
|
|
878
|
+
* Get the underlying viem contract instance.
|
|
879
879
|
*/
|
|
880
880
|
getContract() {
|
|
881
881
|
return this.contract;
|
|
@@ -1228,7 +1228,7 @@ class CoinbaseSmartWallet_json {
|
|
|
1228
1228
|
AddOwner: (callback, filter) => {
|
|
1229
1229
|
return this.publicClient.watchContractEvent({
|
|
1230
1230
|
address: this.contractAddress,
|
|
1231
|
-
abi: exports.
|
|
1231
|
+
abi: exports.CoinbaseSmartWalletAbi,
|
|
1232
1232
|
eventName: 'AddOwner',
|
|
1233
1233
|
args: filter,
|
|
1234
1234
|
onLogs: (logs) => {
|
|
@@ -1247,7 +1247,7 @@ class CoinbaseSmartWallet_json {
|
|
|
1247
1247
|
RemoveOwner: (callback, filter) => {
|
|
1248
1248
|
return this.publicClient.watchContractEvent({
|
|
1249
1249
|
address: this.contractAddress,
|
|
1250
|
-
abi: exports.
|
|
1250
|
+
abi: exports.CoinbaseSmartWalletAbi,
|
|
1251
1251
|
eventName: 'RemoveOwner',
|
|
1252
1252
|
args: filter,
|
|
1253
1253
|
onLogs: (logs) => {
|
|
@@ -1266,7 +1266,7 @@ class CoinbaseSmartWallet_json {
|
|
|
1266
1266
|
Upgraded: (callback, filter) => {
|
|
1267
1267
|
return this.publicClient.watchContractEvent({
|
|
1268
1268
|
address: this.contractAddress,
|
|
1269
|
-
abi: exports.
|
|
1269
|
+
abi: exports.CoinbaseSmartWalletAbi,
|
|
1270
1270
|
eventName: 'Upgraded',
|
|
1271
1271
|
args: filter,
|
|
1272
1272
|
onLogs: (logs) => {
|
|
@@ -1279,4 +1279,4 @@ class CoinbaseSmartWallet_json {
|
|
|
1279
1279
|
};
|
|
1280
1280
|
}
|
|
1281
1281
|
}
|
|
1282
|
-
exports.
|
|
1282
|
+
exports.CoinbaseSmartWallet = CoinbaseSmartWallet;
|
|
@@ -28,11 +28,11 @@ export type UserOperation = {
|
|
|
28
28
|
signature: `0x${string}`;
|
|
29
29
|
};
|
|
30
30
|
/**
|
|
31
|
-
*
|
|
31
|
+
* CoinbaseSmartWallet ABI
|
|
32
32
|
*
|
|
33
33
|
* This ABI is typed using viem's type system for full type safety.
|
|
34
34
|
*/
|
|
35
|
-
export const
|
|
35
|
+
export const CoinbaseSmartWalletAbi = [
|
|
36
36
|
{
|
|
37
37
|
"inputs": [],
|
|
38
38
|
"stateMutability": "nonpayable",
|
|
@@ -850,19 +850,19 @@ export const CoinbaseSmartWallet_jsonAbi = [
|
|
|
850
850
|
] as const satisfies Abi;
|
|
851
851
|
|
|
852
852
|
/**
|
|
853
|
-
* Type-safe ABI for
|
|
853
|
+
* Type-safe ABI for CoinbaseSmartWallet
|
|
854
854
|
*/
|
|
855
|
-
export type
|
|
855
|
+
export type CoinbaseSmartWalletAbi = typeof CoinbaseSmartWalletAbi;
|
|
856
856
|
|
|
857
857
|
/**
|
|
858
|
-
* Contract instance type for
|
|
858
|
+
* Contract instance type for CoinbaseSmartWallet
|
|
859
859
|
*/
|
|
860
860
|
// Use any for contract type to avoid complex viem type issues
|
|
861
861
|
// The runtime behavior is type-safe through viem's ABI typing
|
|
862
|
-
export type
|
|
862
|
+
export type CoinbaseSmartWalletContract = any;
|
|
863
863
|
|
|
864
864
|
/**
|
|
865
|
-
*
|
|
865
|
+
* CoinbaseSmartWallet Contract Class
|
|
866
866
|
*
|
|
867
867
|
* Provides a class-based API similar to TypeChain for interacting with the contract.
|
|
868
868
|
*
|
|
@@ -870,12 +870,12 @@ export type CoinbaseSmartWallet_jsonContract = any;
|
|
|
870
870
|
* ```typescript
|
|
871
871
|
* import { createPublicClient, createWalletClient, http } from 'viem';
|
|
872
872
|
* import { mainnet } from 'viem/chains';
|
|
873
|
-
* import {
|
|
873
|
+
* import { CoinbaseSmartWallet } from 'CoinbaseSmartWallet';
|
|
874
874
|
*
|
|
875
875
|
* const publicClient = createPublicClient({ chain: mainnet, transport: http() });
|
|
876
876
|
* const walletClient = createWalletClient({ chain: mainnet, transport: http() });
|
|
877
877
|
*
|
|
878
|
-
* const contract = new
|
|
878
|
+
* const contract = new CoinbaseSmartWallet('0x...', { publicClient, walletClient });
|
|
879
879
|
*
|
|
880
880
|
* // Read functions
|
|
881
881
|
* const result = await contract.balanceOf('0x...');
|
|
@@ -893,8 +893,8 @@ export type CoinbaseSmartWallet_jsonContract = any;
|
|
|
893
893
|
* });
|
|
894
894
|
* ```
|
|
895
895
|
*/
|
|
896
|
-
export class
|
|
897
|
-
private contract:
|
|
896
|
+
export class CoinbaseSmartWallet {
|
|
897
|
+
private contract: CoinbaseSmartWalletContract;
|
|
898
898
|
private contractAddress: Address;
|
|
899
899
|
private publicClient: PublicClient;
|
|
900
900
|
|
|
@@ -909,7 +909,7 @@ export class CoinbaseSmartWallet_json {
|
|
|
909
909
|
this.publicClient = clients.publicClient;
|
|
910
910
|
this.contract = getContract({
|
|
911
911
|
address,
|
|
912
|
-
abi:
|
|
912
|
+
abi: CoinbaseSmartWalletAbi,
|
|
913
913
|
client: {
|
|
914
914
|
public: clients.publicClient,
|
|
915
915
|
wallet: clients.walletClient,
|
|
@@ -925,9 +925,9 @@ export class CoinbaseSmartWallet_json {
|
|
|
925
925
|
}
|
|
926
926
|
|
|
927
927
|
/**
|
|
928
|
-
* Get the underlying viem contract instance
|
|
928
|
+
* Get the underlying viem contract instance.
|
|
929
929
|
*/
|
|
930
|
-
getContract():
|
|
930
|
+
getContract(): CoinbaseSmartWalletContract {
|
|
931
931
|
return this.contract;
|
|
932
932
|
}
|
|
933
933
|
|
|
@@ -1526,12 +1526,12 @@ export class CoinbaseSmartWallet_json {
|
|
|
1526
1526
|
* @param filter Optional filter for indexed parameters
|
|
1527
1527
|
* @returns Unwatch function to stop listening
|
|
1528
1528
|
*/
|
|
1529
|
-
AddOwner: (callback: (event: { index: bigint; owner: `0x${string}` }) => void, filter?: { index
|
|
1529
|
+
AddOwner: (callback: (event: { index: bigint; owner: `0x${string}` }) => void, filter?: { index?: bigint | bigint[] | null }) => {
|
|
1530
1530
|
return this.publicClient.watchContractEvent({
|
|
1531
1531
|
address: this.contractAddress,
|
|
1532
|
-
abi:
|
|
1532
|
+
abi: CoinbaseSmartWalletAbi,
|
|
1533
1533
|
eventName: 'AddOwner',
|
|
1534
|
-
args: filter,
|
|
1534
|
+
args: filter as any,
|
|
1535
1535
|
onLogs: (logs: any[]) => {
|
|
1536
1536
|
logs.forEach((log: any) => {
|
|
1537
1537
|
callback(log.args as any);
|
|
@@ -1545,12 +1545,12 @@ export class CoinbaseSmartWallet_json {
|
|
|
1545
1545
|
* @param filter Optional filter for indexed parameters
|
|
1546
1546
|
* @returns Unwatch function to stop listening
|
|
1547
1547
|
*/
|
|
1548
|
-
RemoveOwner: (callback: (event: { index: bigint; owner: `0x${string}` }) => void, filter?: { index
|
|
1548
|
+
RemoveOwner: (callback: (event: { index: bigint; owner: `0x${string}` }) => void, filter?: { index?: bigint | bigint[] | null }) => {
|
|
1549
1549
|
return this.publicClient.watchContractEvent({
|
|
1550
1550
|
address: this.contractAddress,
|
|
1551
|
-
abi:
|
|
1551
|
+
abi: CoinbaseSmartWalletAbi,
|
|
1552
1552
|
eventName: 'RemoveOwner',
|
|
1553
|
-
args: filter,
|
|
1553
|
+
args: filter as any,
|
|
1554
1554
|
onLogs: (logs: any[]) => {
|
|
1555
1555
|
logs.forEach((log: any) => {
|
|
1556
1556
|
callback(log.args as any);
|
|
@@ -1564,12 +1564,12 @@ export class CoinbaseSmartWallet_json {
|
|
|
1564
1564
|
* @param filter Optional filter for indexed parameters
|
|
1565
1565
|
* @returns Unwatch function to stop listening
|
|
1566
1566
|
*/
|
|
1567
|
-
Upgraded: (callback: (event: { implementation: `0x${string}` }) => void, filter?: { implementation
|
|
1567
|
+
Upgraded: (callback: (event: { implementation: `0x${string}` }) => void, filter?: { implementation?: `0x${string}` | `0x${string}`[] | null }) => {
|
|
1568
1568
|
return this.publicClient.watchContractEvent({
|
|
1569
1569
|
address: this.contractAddress,
|
|
1570
|
-
abi:
|
|
1570
|
+
abi: CoinbaseSmartWalletAbi,
|
|
1571
1571
|
eventName: 'Upgraded',
|
|
1572
|
-
args: filter,
|
|
1572
|
+
args: filter as any,
|
|
1573
1573
|
onLogs: (logs: any[]) => {
|
|
1574
1574
|
logs.forEach((log: any) => {
|
|
1575
1575
|
callback(log.args as any);
|
package/contracts/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export {
|
|
2
|
-
export type {
|
|
1
|
+
export { CoinbaseSmartWalletAbi, CoinbaseSmartWallet } from './CoinbaseSmartWallet';
|
|
2
|
+
export type { CoinbaseSmartWalletAbi as CoinbaseSmartWalletAbiType, CoinbaseSmartWalletContract } from './CoinbaseSmartWallet';
|
package/contracts/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.CoinbaseSmartWallet = exports.CoinbaseSmartWalletAbi = void 0;
|
|
4
4
|
// Auto-generated exports for all contracts
|
|
5
|
-
var
|
|
6
|
-
Object.defineProperty(exports, "
|
|
7
|
-
Object.defineProperty(exports, "
|
|
5
|
+
var CoinbaseSmartWallet_1 = require("./CoinbaseSmartWallet");
|
|
6
|
+
Object.defineProperty(exports, "CoinbaseSmartWalletAbi", { enumerable: true, get: function () { return CoinbaseSmartWallet_1.CoinbaseSmartWalletAbi; } });
|
|
7
|
+
Object.defineProperty(exports, "CoinbaseSmartWallet", { enumerable: true, get: function () { return CoinbaseSmartWallet_1.CoinbaseSmartWallet; } });
|
package/contracts/index.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
// Auto-generated exports for all contracts
|
|
2
|
-
export {
|
|
3
|
-
export type {
|
|
2
|
+
export { CoinbaseSmartWalletAbi, CoinbaseSmartWallet } from './CoinbaseSmartWallet';
|
|
3
|
+
export type { CoinbaseSmartWalletAbi as CoinbaseSmartWalletAbiType, CoinbaseSmartWalletContract } from './CoinbaseSmartWallet';
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gitmyabi/coinbasesmartwallet",
|
|
3
|
-
"version": "1.0.
|
|
4
|
-
"description": "Auto-generated TypeScript type bindings for CoinbaseSmartWallet (build etherscan-coinbasesmartwallet-
|
|
3
|
+
"version": "1.0.72",
|
|
4
|
+
"description": "Auto-generated TypeScript type bindings for CoinbaseSmartWallet (build etherscan-coinbasesmartwallet-bdd78927-1793859262668, commit 415efbb, branch etherscan)",
|
|
5
5
|
"main": "./index.js",
|
|
6
6
|
"types": "./index.d.ts",
|
|
7
7
|
"exports": {
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
"abi",
|
|
31
31
|
"ethers-v6"
|
|
32
32
|
],
|
|
33
|
-
"license": "
|
|
33
|
+
"license": "Apache-2.0",
|
|
34
34
|
"dependencies": {
|
|
35
35
|
"viem": "^2.0.0"
|
|
36
36
|
},
|
|
@@ -39,5 +39,5 @@
|
|
|
39
39
|
"url": "https://github.com/etherscan/coinbasesmartwallet"
|
|
40
40
|
},
|
|
41
41
|
"branch": "etherscan",
|
|
42
|
-
"shortHash": "
|
|
42
|
+
"shortHash": "415efbb"
|
|
43
43
|
}
|