/*!
 * The buffer module from node.js, for the browser.
 *
 * @author   Feross Aboukhadijeh <https://feross.org>
 * @license  MIT
 */

/*! ../../errors.js */

/*! ../../generateRequest */

/*! ../constants.js */

/*! ../errors.js */

/*! ../extensionType.js */

/*! ../extensions/accountType.js */

/*! ../extensions/extensionType.js */

/*! ../state/account.js */

/*! ../state/mint.js */

/*! ../state/multisig.js */

/*! ../utils.js */

/*! ./_md.js */

/*! ./_shortw_utils.js */

/*! ./_u64.js */

/*! ./abstract/curve.js */

/*! ./abstract/edwards.js */

/*! ./abstract/hash-to-curve.js */

/*! ./abstract/modular.js */

/*! ./abstract/montgomery.js */

/*! ./abstract/weierstrass.js */

/*! ./account.js */

/*! ./accountType.js */

/*! ./base.mjs */

/*! ./bigint.mjs */

/*! ./cpiGuard/index.js */

/*! ./curve.js */

/*! ./decimal.mjs */

/*! ./defaultAccountState/index.js */

/*! ./extensionType.js */

/*! ./groupMemberPointer/state.js */

/*! ./groupPointer/state.js */

/*! ./immutableOwner.js */

/*! ./index.js */

/*! ./interestBearingMint/state.js */

/*! ./internal.js */

/*! ./md5.js */

/*! ./memoTransfer/index.js */

/*! ./metadataPointer/state.js */

/*! ./mintCloseAuthority.js */

/*! ./modular.js */

/*! ./multisig.js */

/*! ./native.mjs */

/*! ./nil.js */

/*! ./nonTransferable.js */

/*! ./parse.js */

/*! ./pausable/index.js */

/*! ./permanentDelegate.js */

/*! ./pubkeyData.js */

/*! ./regex.js */

/*! ./rng.js */

/*! ./scaledUiAmount/index.js */

/*! ./seeds.js */

/*! ./sha1.js */

/*! ./sha2.js */

/*! ./stringify.js */

/*! ./tokenGroup/index.js */

/*! ./transferFee/index.js */

/*! ./transferHook/index.js */

/*! ./types.js */

/*! ./utils.js */

/*! ./v1.js */

/*! ./v3.js */

/*! ./v35.js */

/*! ./v4.js */

/*! ./v5.js */

/*! ./validate.js */

/*! ./version.js */

/*! ./web3.mjs */

/*! @babel/runtime/helpers/asyncToGenerator */

/*! @babel/runtime/regenerator */

/*! @noble/curves/ed25519 */

/*! @noble/curves/secp256k1 */

/*! @noble/hashes/crypto */

/*! @noble/hashes/hmac.js */

/*! @noble/hashes/sha2.js */

/*! @noble/hashes/sha256 */

/*! @noble/hashes/sha3 */

/*! @noble/hashes/utils.js */

/*! @solana/buffer-layout */

/*! @solana/buffer-layout-utils */

/*! @solana/codecs */

/*! @solana/codecs-core */

/*! @solana/codecs-numbers */

/*! @solana/errors */

/*! @solana/spl-token */

/*! @solana/web3.js */

/*! base-x */

/*! base64-js */

/*! bigint-buffer */

/*! bignumber.js */

/*! bn.js */

/*! borsh */

/*! bs58 */

/*! buffer */

/*! eventemitter3 */

/*! ieee754 */

/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */

/*! jayson/lib/client/browser */

/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */

/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */

/*! rpc-websockets */

/*! safe-buffer */

/*! safe-buffer. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> */

/*! superstruct */

/*! text-encoding-utf-8 */

/*! uuid */

/*!************************!*\
  !*** buffer (ignored) ***!
  \************************/

/*!************************************!*\
  !*** ./node_modules/bs58/index.js ***!
  \************************************/

/*!*************************************!*\
  !*** external "regeneratorRuntime" ***!
  \*************************************/

/*!**************************************!*\
  !*** ./node_modules/bn.js/lib/bn.js ***!
  \**************************************/

/*!**************************************!*\
  !*** ./node_modules/buffer/index.js ***!
  \**************************************/

/*!***************************************!*\
  !*** ./node_modules/ieee754/index.js ***!
  \***************************************/

/*!*****************************************!*\
  !*** ./node_modules/base64-js/index.js ***!
  \*****************************************/

/*!*****************************************!*\
  !*** ./node_modules/borsh/lib/index.js ***!
  \*****************************************/

/*!*****************************************!*\
  !*** ./src/static/js/sol-web3/index.js ***!
  \*****************************************/

/*!******************************************!*\
  !*** ./node_modules/base-x/src/index.js ***!
  \******************************************/

/*!*******************************************!*\
  !*** ./node_modules/safe-buffer/index.js ***!
  \*******************************************/

/*!*********************************************!*\
  !*** ./node_modules/eventemitter3/index.js ***!
  \*********************************************/

/*!**********************************************!*\
  !*** ./node_modules/eventemitter3/index.mjs ***!
  \**********************************************/

/*!***********************************************!*\
  !*** ./node_modules/@noble/hashes/esm/_md.js ***!
  \***********************************************/

/*!************************************************!*\
  !*** ./node_modules/@noble/hashes/esm/_u64.js ***!
  \************************************************/

/*!************************************************!*\
  !*** ./node_modules/@noble/hashes/esm/hmac.js ***!
  \************************************************/

/*!************************************************!*\
  !*** ./node_modules/@noble/hashes/esm/sha2.js ***!
  \************************************************/

/*!************************************************!*\
  !*** ./node_modules/@noble/hashes/esm/sha3.js ***!
  \************************************************/

/*!*************************************************!*\
  !*** ./node_modules/@noble/curves/esm/utils.js ***!
  \*************************************************/

/*!*************************************************!*\
  !*** ./node_modules/@noble/hashes/esm/utils.js ***!
  \*************************************************/

/*!*************************************************!*\
  !*** ./node_modules/bignumber.js/bignumber.mjs ***!
  \*************************************************/

/*!*************************************************!*\
  !*** ./node_modules/superstruct/dist/index.mjs ***!
  \*************************************************/

/*!**************************************************!*\
  !*** ./node_modules/@noble/hashes/esm/crypto.js ***!
  \**************************************************/

/*!**************************************************!*\
  !*** ./node_modules/@noble/hashes/esm/sha256.js ***!
  \**************************************************/

/*!**************************************************!*\
  !*** ./node_modules/uuid/dist/esm-browser/v1.js ***!
  \**************************************************/

/*!**************************************************!*\
  !*** ./node_modules/uuid/dist/esm-browser/v3.js ***!
  \**************************************************/

/*!**************************************************!*\
  !*** ./node_modules/uuid/dist/esm-browser/v4.js ***!
  \**************************************************/

/*!**************************************************!*\
  !*** ./node_modules/uuid/dist/esm-browser/v5.js ***!
  \**************************************************/

/*!***************************************************!*\
  !*** ./node_modules/@noble/curves/esm/ed25519.js ***!
  \***************************************************/

/*!***************************************************!*\
  !*** ./node_modules/uuid/dist/esm-browser/md5.js ***!
  \***************************************************/

/*!***************************************************!*\
  !*** ./node_modules/uuid/dist/esm-browser/nil.js ***!
  \***************************************************/

/*!***************************************************!*\
  !*** ./node_modules/uuid/dist/esm-browser/rng.js ***!
  \***************************************************/

/*!***************************************************!*\
  !*** ./node_modules/uuid/dist/esm-browser/v35.js ***!
  \***************************************************/

/*!****************************************************!*\
  !*** ./node_modules/bigint-buffer/dist/browser.js ***!
  \****************************************************/

/*!****************************************************!*\
  !*** ./node_modules/jayson/lib/generateRequest.js ***!
  \****************************************************/

/*!****************************************************!*\
  !*** ./node_modules/uuid/dist/esm-browser/sha1.js ***!
  \****************************************************/

/*!*****************************************************!*\
  !*** ./node_modules/@noble/curves/esm/secp256k1.js ***!
  \*****************************************************/

/*!*****************************************************!*\
  !*** ./node_modules/uuid/dist/esm-browser/index.js ***!
  \*****************************************************/

/*!*****************************************************!*\
  !*** ./node_modules/uuid/dist/esm-browser/parse.js ***!
  \*****************************************************/

/*!*****************************************************!*\
  !*** ./node_modules/uuid/dist/esm-browser/regex.js ***!
  \*****************************************************/

/*!*******************************************************!*\
  !*** ./node_modules/uuid/dist/esm-browser/version.js ***!
  \*******************************************************/

/*!********************************************************!*\
  !*** ./node_modules/uuid/dist/esm-browser/validate.js ***!
  \********************************************************/

/*!*********************************************************!*\
  !*** ./node_modules/@noble/curves/esm/_shortw_utils.js ***!
  \*********************************************************/

/*!*********************************************************!*\
  !*** ./node_modules/jayson/lib/client/browser/index.js ***!
  \*********************************************************/

/*!*********************************************************!*\
  !*** ./node_modules/uuid/dist/esm-browser/stringify.js ***!
  \*********************************************************/

/*!**********************************************************!*\
  !*** ./node_modules/@noble/curves/esm/abstract/curve.js ***!
  \**********************************************************/

/*!**********************************************************!*\
  !*** ./node_modules/@solana/buffer-layout/lib/Layout.js ***!
  \**********************************************************/

/*!**********************************************************!*\
  !*** ./node_modules/@solana/spl-token/lib/esm/errors.js ***!
  \**********************************************************/

/*!************************************************************!*\
  !*** ./node_modules/@noble/curves/esm/abstract/edwards.js ***!
  \************************************************************/

/*!************************************************************!*\
  !*** ./node_modules/@noble/curves/esm/abstract/modular.js ***!
  \************************************************************/

/*!************************************************************!*\
  !*** ./node_modules/@solana/errors/dist/index.browser.mjs ***!
  \************************************************************/

/*!************************************************************!*\
  !*** ./node_modules/rpc-websockets/dist/index.browser.mjs ***!
  \************************************************************/

/*!*************************************************************!*\
  !*** ./node_modules/@solana/spl-token/lib/esm/constants.js ***!
  \*************************************************************/

/*!**************************************************************!*\
  !*** ./node_modules/@solana/spl-token/lib/esm/state/mint.js ***!
  \**************************************************************/

/*!**************************************************************!*\
  !*** ./node_modules/text-encoding-utf-8/lib/encoding.lib.js ***!
  \**************************************************************/

/*!***************************************************************!*\
  !*** ./node_modules/@noble/curves/esm/abstract/montgomery.js ***!
  \***************************************************************/

/*!***************************************************************!*\
  !*** ./node_modules/@solana/web3.js/lib/index.browser.esm.js ***!
  \***************************************************************/

/*!****************************************************************!*\
  !*** ./node_modules/@noble/curves/esm/abstract/weierstrass.js ***!
  \****************************************************************/

/*!*****************************************************************!*\
  !*** ./node_modules/@solana/codecs-core/dist/index.browser.mjs ***!
  \*****************************************************************/

/*!*****************************************************************!*\
  !*** ./node_modules/@solana/spl-token/lib/esm/state/account.js ***!
  \*****************************************************************/

/*!******************************************************************!*\
  !*** ./node_modules/@noble/curves/esm/abstract/hash-to-curve.js ***!
  \******************************************************************/

/*!******************************************************************!*\
  !*** ./node_modules/@solana/spl-token/lib/esm/state/multisig.js ***!
  \******************************************************************/

/*!*******************************************************************!*\
  !*** ./node_modules/@solana/buffer-layout-utils/lib/esm/base.mjs ***!
  \*******************************************************************/

/*!*******************************************************************!*\
  !*** ./node_modules/@solana/buffer-layout-utils/lib/esm/web3.mjs ***!
  \*******************************************************************/

/*!********************************************************************!*\
  !*** ./node_modules/@solana/buffer-layout-utils/lib/esm/index.mjs ***!
  \********************************************************************/

/*!********************************************************************!*\
  !*** ./node_modules/@solana/codecs-numbers/dist/index.browser.mjs ***!
  \********************************************************************/

/*!*********************************************************************!*\
  !*** ./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js ***!
  \*********************************************************************/

/*!*********************************************************************!*\
  !*** ./node_modules/@solana/buffer-layout-utils/lib/esm/bigint.mjs ***!
  \*********************************************************************/

/*!*********************************************************************!*\
  !*** ./node_modules/@solana/buffer-layout-utils/lib/esm/native.mjs ***!
  \*********************************************************************/

/*!**********************************************************************!*\
  !*** ./node_modules/@solana/buffer-layout-utils/lib/esm/decimal.mjs ***!
  \**********************************************************************/

/*!**********************************************************************!*\
  !*** ./node_modules/@solana/spl-token/lib/esm/instructions/types.js ***!
  \**********************************************************************/

/*!*************************************************************************!*\
  !*** ./node_modules/@solana/spl-token/lib/esm/instructions/internal.js ***!
  \*************************************************************************/

/*!*************************************************************************!*\
  !*** ./node_modules/@solana/spl-token/lib/esm/instructions/transfer.js ***!
  \*************************************************************************/

/*!**************************************************************************!*\
  !*** ./node_modules/@solana/spl-token-group/lib/esm/state/tokenGroup.js ***!
  \**************************************************************************/

/*!**************************************************************************!*\
  !*** ./node_modules/@solana/spl-token/lib/esm/extensions/accountType.js ***!
  \**************************************************************************/

/*!****************************************************************************!*\
  !*** ./node_modules/@solana/codecs-data-structures/dist/index.browser.mjs ***!
  \****************************************************************************/

/*!****************************************************************************!*\
  !*** ./node_modules/@solana/spl-token/lib/esm/extensions/extensionType.js ***!
  \****************************************************************************/

/*!*****************************************************************************!*\
  !*** ./node_modules/@solana/spl-token/lib/esm/extensions/cpiGuard/state.js ***!
  \*****************************************************************************/

/*!*****************************************************************************!*\
  !*** ./node_modules/@solana/spl-token/lib/esm/extensions/immutableOwner.js ***!
  \*****************************************************************************/

/*!*****************************************************************************!*\
  !*** ./node_modules/@solana/spl-token/lib/esm/extensions/pausable/state.js ***!
  \*****************************************************************************/

/*!******************************************************************************!*\
  !*** ./node_modules/@solana/spl-token/lib/esm/extensions/nonTransferable.js ***!
  \******************************************************************************/

/*!********************************************************************************!*\
  !*** ./node_modules/@solana/spl-token-group/lib/esm/state/tokenGroupMember.js ***!
  \********************************************************************************/

/*!********************************************************************************!*\
  !*** ./node_modules/@solana/spl-token/lib/esm/extensions/permanentDelegate.js ***!
  \********************************************************************************/

/*!********************************************************************************!*\
  !*** ./node_modules/@solana/spl-token/lib/esm/extensions/transferFee/state.js ***!
  \********************************************************************************/

/*!*********************************************************************************!*\
  !*** ./node_modules/@solana/spl-token/lib/esm/extensions/groupPointer/state.js ***!
  \*********************************************************************************/

/*!*********************************************************************************!*\
  !*** ./node_modules/@solana/spl-token/lib/esm/extensions/memoTransfer/state.js ***!
  \*********************************************************************************/

/*!*********************************************************************************!*\
  !*** ./node_modules/@solana/spl-token/lib/esm/extensions/mintCloseAuthority.js ***!
  \*********************************************************************************/

/*!*********************************************************************************!*\
  !*** ./node_modules/@solana/spl-token/lib/esm/extensions/transferHook/seeds.js ***!
  \*********************************************************************************/

/*!*********************************************************************************!*\
  !*** ./node_modules/@solana/spl-token/lib/esm/extensions/transferHook/state.js ***!
  \*********************************************************************************/

/*!***********************************************************************************!*\
  !*** ./node_modules/@solana/spl-token/lib/esm/extensions/scaledUiAmount/state.js ***!
  \***********************************************************************************/

/*!************************************************************************************!*\
  !*** ./node_modules/@solana/spl-token/lib/esm/extensions/metadataPointer/state.js ***!
  \************************************************************************************/

/*!**************************************************************************************!*\
  !*** ./node_modules/@solana/spl-token/lib/esm/extensions/transferHook/pubkeyData.js ***!
  \**************************************************************************************/

/*!***************************************************************************************!*\
  !*** ./node_modules/@solana/spl-token/lib/esm/extensions/groupMemberPointer/state.js ***!
  \***************************************************************************************/

/*!***************************************************************************************!*\
  !*** ./node_modules/@solana/spl-token/lib/esm/instructions/associatedTokenAccount.js ***!
  \***************************************************************************************/

/*!****************************************************************************************!*\
  !*** ./node_modules/@solana/spl-token/lib/esm/extensions/defaultAccountState/state.js ***!
  \****************************************************************************************/

/*!****************************************************************************************!*\
  !*** ./node_modules/@solana/spl-token/lib/esm/extensions/interestBearingMint/state.js ***!
  \****************************************************************************************/

/*!*****************************************************************************************!*\
  !*** ./node_modules/@solana/web3.js/node_modules/@solana/errors/dist/index.browser.mjs ***!
  \*****************************************************************************************/

/*!**********************************************************************************************!*\
  !*** ./node_modules/@solana/web3.js/node_modules/@solana/codecs-core/dist/index.browser.mjs ***!
  \**********************************************************************************************/

/*!*************************************************************************************************!*\
  !*** ./node_modules/@solana/web3.js/node_modules/@solana/codecs-numbers/dist/index.browser.mjs ***!
  \*************************************************************************************************/

/**
 * Support for translating between Uint8Array instances and JavaScript
 * native types.
 *
 * {@link module:Layout~Layout|Layout} is the basis of a class
 * hierarchy that associates property names with sequences of encoded
 * bytes.
 *
 * Layouts are supported for these scalar (numeric) types:
 * * {@link module:Layout~UInt|Unsigned integers in little-endian
 *   format} with {@link module:Layout.u8|8-bit}, {@link
 *   module:Layout.u16|16-bit}, {@link module:Layout.u24|24-bit},
 *   {@link module:Layout.u32|32-bit}, {@link
 *   module:Layout.u40|40-bit}, and {@link module:Layout.u48|48-bit}
 *   representation ranges;
 * * {@link module:Layout~UIntBE|Unsigned integers in big-endian
 *   format} with {@link module:Layout.u16be|16-bit}, {@link
 *   module:Layout.u24be|24-bit}, {@link module:Layout.u32be|32-bit},
 *   {@link module:Layout.u40be|40-bit}, and {@link
 *   module:Layout.u48be|48-bit} representation ranges;
 * * {@link module:Layout~Int|Signed integers in little-endian
 *   format} with {@link module:Layout.s8|8-bit}, {@link
 *   module:Layout.s16|16-bit}, {@link module:Layout.s24|24-bit},
 *   {@link module:Layout.s32|32-bit}, {@link
 *   module:Layout.s40|40-bit}, and {@link module:Layout.s48|48-bit}
 *   representation ranges;
 * * {@link module:Layout~IntBE|Signed integers in big-endian format}
 *   with {@link module:Layout.s16be|16-bit}, {@link
 *   module:Layout.s24be|24-bit}, {@link module:Layout.s32be|32-bit},
 *   {@link module:Layout.s40be|40-bit}, and {@link
 *   module:Layout.s48be|48-bit} representation ranges;
 * * 64-bit integral values that decode to an exact (if magnitude is
 *   less than 2^53) or nearby integral Number in {@link
 *   module:Layout.nu64|unsigned little-endian}, {@link
 *   module:Layout.nu64be|unsigned big-endian}, {@link
 *   module:Layout.ns64|signed little-endian}, and {@link
 *   module:Layout.ns64be|unsigned big-endian} encodings;
 * * 32-bit floating point values with {@link
 *   module:Layout.f32|little-endian} and {@link
 *   module:Layout.f32be|big-endian} representations;
 * * 64-bit floating point values with {@link
 *   module:Layout.f64|little-endian} and {@link
 *   module:Layout.f64be|big-endian} representations;
 * * {@link module:Layout.const|Constants} that take no space in the
 *   encoded expression.
 *
 * and for these aggregate types:
 * * {@link module:Layout.seq|Sequence}s of instances of a {@link
 *   module:Layout~Layout|Layout}, with JavaScript representation as
 *   an Array and constant or data-dependent {@link
 *   module:Layout~Sequence#count|length};
 * * {@link module:Layout.struct|Structure}s that aggregate a
 *   heterogeneous sequence of {@link module:Layout~Layout|Layout}
 *   instances, with JavaScript representation as an Object;
 * * {@link module:Layout.union|Union}s that support multiple {@link
 *   module:Layout~VariantLayout|variant layouts} over a fixed
 *   (padded) or variable (not padded) span of bytes, using an
 *   unsigned integer at the start of the data or a separate {@link
 *   module:Layout.unionLayoutDiscriminator|layout element} to
 *   determine which layout to use when interpreting the buffer
 *   contents;
 * * {@link module:Layout.bits|BitStructure}s that contain a sequence
 *   of individual {@link
 *   module:Layout~BitStructure#addField|BitField}s packed into an 8,
 *   16, 24, or 32-bit unsigned integer starting at the least- or
 *   most-significant bit;
 * * {@link module:Layout.cstr|C strings} of varying length;
 * * {@link module:Layout.blob|Blobs} of fixed- or variable-{@link
 *   module:Layout~Blob#length|length} raw data.
 *
 * All {@link module:Layout~Layout|Layout} instances are immutable
 * after construction, to prevent internal state from becoming
 * inconsistent.
 *
 * @local Layout
 * @local ExternalLayout
 * @local GreedyCount
 * @local OffsetLayout
 * @local UInt
 * @local UIntBE
 * @local Int
 * @local IntBE
 * @local NearUInt64
 * @local NearUInt64BE
 * @local NearInt64
 * @local NearInt64BE
 * @local Float
 * @local FloatBE
 * @local Double
 * @local DoubleBE
 * @local Sequence
 * @local Structure
 * @local UnionDiscriminator
 * @local UnionLayoutDiscriminator
 * @local Union
 * @local VariantLayout
 * @local BitStructure
 * @local BitField
 * @local Boolean
 * @local Blob
 * @local CString
 * @local Constant
 * @local bindConstructorLayout
 * @module Layout
 * @license MIT
 * @author Peter A. Bigot
 * @see {@link https://github.com/pabigot/buffer-layout|buffer-layout on GitHub}
 */
