#######################################
# Syntax Coloring Map
#######################################

#######################################
# Hash.h Methods and Functions (KEYWORD2)
#######################################

rmd160	KEYWORD2
sha256	KEYWORD2
hash160	KEYWORD2
doubleSha	KEYWORD2
sha512	KEYWORD2
sha512Hmac	KEYWORD2

#######################################
# Datatypes and classes (KEYWORD1)
#######################################

Neurai	KEYWORD1
Hash	KEYWORD1
Conversion	KEYWORD1
OpCodes	KEYWORD1

Scalar	KEYWORD1
Point	KEYWORD1
PrivateKey	KEYWORD1
PublicKey	KEYWORD1
HDPrivateKey	KEYWORD1
HDPublicKey	KEYWORD1
Script	KEYWORD1
Signature	KEYWORD1
Tx	KEYWORD1
TxIn	KEYWORD1
TxOut	KEYWORD1
ElectrumTx	KEYWORD1
PSBT	KEYWORD1

#######################################
# Methods and Functions (KEYWORD2)
#######################################

parse	KEYWORD2
parseHex	KEYWORD2
parseBase64	KEYWORD2
toBase64	KEYWORD2
serialize	KEYWORD2
bin	KEYWORD2
der	KEYWORD2

type	KEYWORD2
length	KEYWORD2
scriptLength	KEYWORD2
serializeScript	KEYWORD2
push	KEYWORD2
scriptPubkey	KEYWORD2
address	KEYWORD2

pow	KEYWORD2
sign	KEYWORD2
fromSeed	KEYWORD2
fromMnemonic	KEYWORD2
xpub	KEYWORD2
xprv	KEYWORD2
child	KEYWORD2
hardenedChild	KEYWORD2
derive	KEYWORD2
legacyAddress	KEYWORD2
parse	KEYWORD2
fromWIF	KEYWORD2
publicKey	KEYWORD2
sec	KEYWORD2
fromHex	KEYWORD2
toHex	KEYWORD2
toString	KEYWORD2
generateMnemonic	KEYWORD2
checkMnemonic	KEYWORD2

littleEndianToInt	KEYWORD2
intToLittleEndian	KEYWORD2
bigEndianToInt	KEYWORD2
intToBigEndian	KEYWORD2

lenVarInt	KEYWORD2
readVarInt	KEYWORD2
readVarInt	KEYWORD2
writeVarInt	KEYWORD2
writeVarInt	KEYWORD2

addInput	KEYWORD2
addOutput	KEYWORD2
signInput	KEYWORD2
signSegwitInput	KEYWORD2
sigHash	KEYWORD2

######################################
# Constants (LITERAL1)
#######################################

PRIME	LITERAL1

P2PKH	LITERAL1
P2SH	LITERAL1
P2WPKH	LITERAL1
P2WSH	LITERAL1
P2SH_P2WPKH	LITERAL1
P2SH_P2WSH	LITERAL1
SIGHASH_ALL	LITERAL1
SIGHASH_NONE	LITERAL1
SIGHASH_SINGLE	LITERAL1

######################################
# Opcodes (LITERAL1)
#######################################

OP_0	LITERAL1
OP_PUSHDATA1	LITERAL1
OP_PUSHDATA2	LITERAL1
OP_PUSHDATA4	LITERAL1
OP_1NEGATE	LITERAL1
OP_RESERVED	LITERAL1
OP_1	LITERAL1
OP_2	LITERAL1
OP_3	LITERAL1
OP_4	LITERAL1
OP_5	LITERAL1
OP_6	LITERAL1
OP_7	LITERAL1
OP_8	LITERAL1
OP_9	LITERAL1
OP_10	LITERAL1
OP_11	LITERAL1
OP_12	LITERAL1
OP_13	LITERAL1
OP_14	LITERAL1
OP_15	LITERAL1
OP_16	LITERAL1
OP_NOP	LITERAL1
OP_VER	LITERAL1
OP_IF	LITERAL1
OP_NOTIF	LITERAL1
OP_VERIF	LITERAL1
OP_VERNOTIF	LITERAL1
OP_ELSE	LITERAL1
OP_ENDIF	LITERAL1
OP_VERIFY	LITERAL1
OP_RETURN	LITERAL1
OP_TOALTSTACK	LITERAL1
OP_FROMALTSTACK	LITERAL1
OP_2DROP	LITERAL1
OP_2DUP	LITERAL1
OP_3DUP	LITERAL1
OP_2OVER	LITERAL1
OP_2ROT	LITERAL1
OP_2SWAP	LITERAL1
OP_IFDUP	LITERAL1
OP_DEPTH	LITERAL1
OP_DROP	LITERAL1
OP_DUP	LITERAL1
OP_NIP	LITERAL1
OP_OVER	LITERAL1
OP_PICK	LITERAL1
OP_ROLL	LITERAL1
OP_ROT	LITERAL1
OP_SWAP	LITERAL1
OP_TUCK	LITERAL1
OP_CAT	LITERAL1
OP_SUBSTR	LITERAL1
OP_LEFT	LITERAL1
OP_RIGHT	LITERAL1
OP_SIZE	LITERAL1
OP_INVERT	LITERAL1
OP_AND	LITERAL1
OP_OR	LITERAL1
OP_XOR	LITERAL1
OP_EQUAL	LITERAL1
OP_EQUALVERIFY	LITERAL1
OP_RESERVED1	LITERAL1
OP_RESERVED2	LITERAL1
OP_1ADD	LITERAL1
OP_1SUB	LITERAL1
OP_2MUL	LITERAL1
OP_2DIV	LITERAL1
OP_NEGATE	LITERAL1
OP_ABS	LITERAL1
OP_NOT	LITERAL1
OP_0NOTEQUAL	LITERAL1
OP_ADD	LITERAL1
OP_SUB	LITERAL1
OP_MUL	LITERAL1
OP_DIV	LITERAL1
OP_MOD	LITERAL1
OP_LSHIFT	LITERAL1
OP_RSHIFT	LITERAL1
OP_BOOLAND	LITERAL1
OP_BOOLOR	LITERAL1
OP_NUMEQUAL	LITERAL1
OP_NUMEQUALVERIFY	LITERAL1
OP_NUMNOTEQUAL	LITERAL1
OP_LESSTHAN	LITERAL1
OP_GREATERTHAN	LITERAL1
OP_LESSTHANOREQUAL	LITERAL1
OP_GREATERTHANOREQUAL	LITERAL1
OP_MIN	LITERAL1
OP_MAX	LITERAL1
OP_WITHIN	LITERAL1
OP_RIPEMD160	LITERAL1
OP_SHA1	LITERAL1
OP_SHA256	LITERAL1
OP_HASH160	LITERAL1
OP_HASH256	LITERAL1
OP_CODESEPARATOR	LITERAL1
OP_CHECKSIG	LITERAL1
OP_CHECKSIGVERIFY	LITERAL1
OP_CHECKMULTISIG	LITERAL1
OP_CHECKMULTISIGVERIFY	LITERAL1
OP_NOP1	LITERAL1
OP_CHECKLOCKTIMEVERIFY	LITERAL1
OP_CHECKSEQUENCEVERIFY	LITERAL1
OP_NOP4	LITERAL1
OP_NOP5	LITERAL1
OP_NOP6	LITERAL1
OP_NOP7	LITERAL1
OP_NOP8	LITERAL1
OP_NOP9	LITERAL1
OP_NOP10	LITERAL1
OP_NULLDATA	LITERAL1
OP_PUBKEYHASH	LITERAL1
OP_PUBKEY	LITERAL1
OP_INVALIDOPCODE	LITERAL1
OP_XNA_ASSET	LITERAL1
