Skip to content

Releases: bitshares/bitshares-core

BitShares Core 3.2.1

19 Jul 22:37
af8a01a
Compare
Choose a tag to compare

The BitShares Core software has been updated to the 3.2.1 release. The Core software is used to build the validation nodes that perform consensus of all transactions on the BitShares blockchain. This release includes a fix for an issue found in the 3.2.0 release, and does not include any changes to the consensus protocol.

Documentation for users may be be found at How BitShares Works.

Documentation for BitShares developers may be now be found at the new BitShares Developer Portal.

Who Should Upgrade?

No upgrade is required by any operator of a validation node. Yet many operators will benefit by upgrading.

Operators of API nodes should upgrade

Upgrade Process

Precautions

If upgrading from the 3.2.0 release, a replay is not necessary and will not be automatically executed after the upgrade.

Please check the 3.2.0 Release Notes for more information if you are upgrading from versions prior to 3.2.0.

How to Upgrade from Source Code

Obtain the Source Code

The source code may be obtained by checking out the 3.2.1 tag. Download the source at:

Build the Binaries

The binaries may be built by using your pre-existing process, or by following the standard instructions that can be found in the wiki:

Deploy the Binaries

Your standard process for deploying the node software may be used. No additional requirements or precautions will be required to deploy the new release.

How to Upgrade with Docker

The latest Docker image may be found at BitShares Core Docker page and updated with

docker pull bitshares/bitshares-core

Binaries

Binaries of the command line interface (CLI) wallet, node software, and delayed node are pre-built and available for download.

Platform SHA256 Checksum
Microsoft Windows dc0ee4ae52fb70a342f3def66b4b9e6d8825bdc7f281f9473e305a4525ea9d73
macOS 5c32a22fdf5aaabd66e822f525f09dd4eaa20a68580e807265c87a1e5d4ff675
Linux 00e3180f796cf9f89f66f00faa7356585f3232b86d20643b3ae1b8525f3a9d3c

Changes

The changes for the 3.2.1 Release are summarized below.

API

Description Issue Pull Request
Prevent hang of API Node 1852 1854

Release Contributors

@abitmore

BitShares Core 3.2.0

16 Jul 19:49
e8567d0
Compare
Choose a tag to compare

UPDATE: this release has a stability issue, please use 3.2.1.

The BitShares Core software has been updated to the 3.2.0 Feature Release. The Core software is used to build the validation nodes that perform consensus of all transactions on the BitShares blockchain. This release includes additions and improvements but does not include any changes to the consensus protocol.

Documentation for users may be be found at How BitShares Works.

Documentation for BitShares developers may be now be found at the new BitShares Developer Portal.

Who Should Upgrade?

No upgrade is required by any operator of a validation node. Yet many operators will benefit by upgrading.

Operators of API nodes should upgrade

Note: some API changes may break existing clients, described in the API section.

Users of the command line interface wallet (CLI) will benefit from stability improvements (1690, 1772), improved security while unlocking and improved logging.

Upgrade Process

Precautions

A replay will automatically be executed after the upgrade.

If the config file (config.ini) includes the setting required-participation = false, the corresponding line should be removed or commented out, or change false to an appropriate number between 0 and 100, otherwise witness_node won't start.

Please check the 3.1.0 Release Notes for more information if you are upgrading from a version prior to 3.1.0.

How to Upgrade from Source Code

Note: the minimum build requirements have changed since this release:

  • The code base now requires a compiler that supports the C 14 standard (previously C 11).
  • The minimum supported boost version is now 1.58 (previously 1.57).
  • The minimum supported CMake version is now 3.1 (previously 2.x).

Obtain the Source Code

The source code may be obtained by checking out the 3.2.0 tag. Download the source at:

Build the Binaries

The binaries may be built by using your pre-existing process, or by following the standard instructions that can be found in the wiki:

Deploy the Binaries

Your standard process for deploying the node software may be used. No additional requirements or precautions will be required to deploy the new release.

How to Upgrade with Docker

The latest Docker image may be found at BitShares Core Docker page and updated with

docker pull bitshares/bitshares-core

Binaries

UPDATE: links to binaries were removed due to stability issue in the code.

Binaries of the command line interface (CLI) wallet, node software, and delayed node are pre-built and available for download.

Platform SHA256 Checksum
Microsoft Windows 2d5bfee4de04431280e9717ae5b8f73cb81ffe5e1176a8b2bdbfb3f765b798b5
Mac c83ed7f9fd3851b4f3cf87450535d947fb5821cfc18f70a9606fe2b4fb3c0f6d
Linux 76cccb29d2d2d8ce455f3700ab34bf7092327b53717eaa8e7e6607b32879c2f9

Changes

The changes for 3.2.0 Feature Release are summarized below.

Core Functionality

Description Issue Pull Request
Fix Market Fee Sharing percentage check 1775
Disallow temp-account to withdraw vested balance 1800 1813

API

Description Issue Pull Request
Dedupe results of get_key_references API 1209 1795
Add support for optional parameters FC-126
Fix get_accounts error handling 1734 1765
Add missing data to get_full_accounts, add new APIs get_assets_by_issuer, get_call_orders_by_account and get_settle_orders_by_account 1654 1749
Add set_auto_subscription API, fix subscription issues found in get_assets, get_accounts and lookup_accounts 726 777 1731

The get_full_accounts API

  • will return different fields: two fields (withdraws and htlcs) have been removed and are replaced by four fields (withdraws_from, withdraws_to, htlcs_from, htlcs_to);
  • lists returned by the API are limited to certain sizes (configurable by node operator), a more_data_available field is added to indicate what lists are incomplete due to the limit. Clients need to call other APIs to query for next pages of data.

Calls to get_full_accounts, get_accounts, and get_assets will no longer produce error messages when querying for non-existent accounts or assets. Instead,

  • get_full_accounts will return an empty result,
  • get_accounts will return null, and
  • get_assets will return null.

Node Functionality

Description Issue Pull Request
Reduce Logging 1798 1799
Fix required-participation parameter 1786 1787
Configurable API call limits 783 1673 1817
Fix JSONRPC error handling 1688 FC-135

Command Line Interface Wallet (CLI)

Description Issue Pull Request
Safer unlock and set_password commands in cli_wallet 1171 FC-97 1382
Fix crash on exit, improved TAB completion and command history navigation (non-Windows) 1690 FC-119 FC-129 FC-136 1695 1788
Replace broken HTTP parser, -H option now serves websocket connection as well, -r option will be deprecated 1772 1782
Logging improvements 1149 1567 1528 1814

Software Design

Description Issue Pull Request
Performance improvement in Market fee sharing 1801
Extend static_variant with is_type helper 1769 FC-138 1792
Use explicit template instantiation to speed up builds FC-133 1768 [1818](https://github.com/bitshares/bits...
Read more

BitShares Core 3.1.0

15 May 15:48
e3d1226
Compare
Choose a tag to compare

Release Notes

The BitShares Core software has been updated to the 3.1.0 Feature Release. The Core software is used to build the validation nodes that perform consensus of all transactions on the BitShares blockchain. This release includes additions and improvements but does not include any changes to the consensus protocol.

Documentation for users may be be found at How BitShares Works.

Documentation for BitShares developers may be now be found at the new BitShares Developer Portal.

Who Should Upgrade?

No upgrade is required by any operator of a validation node. Yet many operators will benefit by upgrading.

Operators of API nodes should upgrade

All node operators will benefit from performance improvements (1608,1621, 1662) including during replay.

Users of the command line interface wallet (CLI) will benefit from new getter commands for transaction signers and the ability to add signatures to partially signed transactions.

Upgrade Process

Precautions

A replay will automatically be executed after the upgrade.

Please check the 3.0.1 Release Notes for more information if you are upgrading from a version prior to 3.0.1.

How to Upgrade from Source Code

Obtain the Source Code

The source code may be obtained by checking out the 3.1.0 tag. Download the source at:

Build the Binaries

The binaries may be built by using your pre-existing process, or by following the standard instructions that can be found in the wiki:

Deploy the Binaries

Your standard process for deploying the node software may be used. No additional requirements or precautions will be required to deploy the new release.

How to Upgrade with Docker

The latest Docker image may be found at BitShares Core Docker page and updated with

docker pull bitshares/bitshares-core

Binaries

Binaries of the command line interface (CLI) wallet, node software, and delayed node are pre-built and available for download.

Platform SHA256 Checksum
Microsoft Windows e1ed61f377a488ebd79d0ad01f24d37eb0f30c3e58ff753bbb042a282e897161
Apple macOS 571aeaca0a32036836febb8f9782ace93a5c1c5d0f03bd8093db3fad53b5fbae
Linux 795628456a40e1d00a22e4f92771e740741269cad17ed900baaf845b59d56427

Changes

The changes for 3.1.0 Feature Release are summarized below.

API

Description Issue Pull Request
get_full_accounts includes htlc; New HTLC APIs 1713 1742
Fix: ElasticSearch-objects plugin does not load genesis data 1652 1717
Add fail_reason to reflection meta of proposal_object 1730 1732
Fix: Inconsistent required_approval_index when loading from disk 1719 1720
Deterministic numbering of virtual operations in account history 1675 1676
Change hard-coded limitations in APIs to configurable 782 1513
Fix permessage_deflate - WebSocket-2, FC-106, FC-108

Node Functionality

Description Issue Pull Request
Improve performance of markets 982 1608,1621
Improve fee_schedule::calculate_fee() performance 1660 1662
Skip transaction size check during replay 1619 1716
Reduce precision of numbers in replay output 1666 1674
Bump fc - 1596

Node Plugins

Description Issue Pull Request
Add plugin section headers for auto-generated config.ini 1407 1641

Command Line Interface Wallet (CLI)

Description Issue Pull Request
Fixed saving keys in wallet - 1613
Add get_signed_transaction_signers and get_key_references commands to CLI 1210 1635
Add CLI command to add signatures to a partially signed transaction add_transaction_signature 867 1032
wallet info() change participation to int - 1666
Avoid segfault in CLI bid_collateral command - 1649

Other Wallets

Description Issue Pull Request
Improve js_serializer 1701 1702,1741
Install debug_witness headers 1727

Software Design

Description Issue Pull Request
Remove old hardfork checks 1553 1718
Removed unused header file 1219 1740
Replace smart_ref with shared_ptr 1548 FC-109, 1556
Make chain_parameters::current_fees const 1670 FC-115,1678
Add missing typename reflection for flat_map FC-117
Make static_variant::tag_type public FC-112
Add missing operator overloads for fc::unsigned_int FC-107
valgrind inspired fixes - 1693
Change indentation in quit command - 1684

Build Process

Description Issue Pull Request
Recent build errors on Windows platform 1593 [FC-110](https://github.com/bitshares...
Read more

BitShares Core Release 3.0.1

09 Apr 18:45
623aea2
Compare
Choose a tag to compare

Fixes

  • Added validation to the htlc_extend validation to prevent unwanted extensions
  • Added history entry for all parties involved in an htlc.

Where to Learn More

Who Should Update

  • All validation node operators are required to upgrade prior to Protocol Activation: 23 APR 2019 14:02 UTC as this is a consensus protocol impacting release
  • All API node operators are strongly encouraged to upgrade, as account history IDs could become different between nodes running newer vs older versions
  • All BTS token holders are strongly encouraged to review this release, then vote to support block producers signaling their intention to upgrade prior to protocol activation

How to Update

Precautions

  • All validation nodes must complete their upgrade prior to Protocol Activation: 23 APR 2019 14:02 UTC
  • A blockchain replay will not be necessary if the node was previously updated to 3.0.0.

Obtain the Source Code

  • git client: git clone --recursive --branch 3.0.1 https://github.com/bitshares/bitshares-core.git
  • zip archive:
  • tar.gz archive:

Build the Binaries

The binaries may be built by using your pre-existing process, or by following the standard instructions that can be found in the wiki:

Deploy the Binaries

Your standard process for deploying the node software may be used. No additional requirements or precautions will be required to deploy the new release.

Obtain the Docker Image

The latest Docker image may be found at BitShares Core Docker page and updated with:

docker pull bitshares/bitshares-core

Binaries

Binaries of the command line interface (CLI) wallet, node software, and delayed node are pre-built and available for download.

Platform SHA256 Checksum
Microsoft Windows f44bcf0b95470aecef826ec2e4959adb7112b8f9144bd3d02c36c0a33b1da5c5
Mac afba66fc18ffff89f2ee7b4fe5919aa1ec62c93ffc35d8c4b1332f6d688766ed
Linux 7bf688f56d0555af678bec2cd33f48851844e2b2b3238a767ec8f02764eb3c7a

Changes

A summary of the tasks contained within Protocol Upgrade Release (3.0.1) follows:

Core Functionality

Description Issue Pull Request
Insufficient htlc_extend_operation validation 1696 1699

Release Contributors

@abitmore
@jmjatlanta
@oxarbitrage
@pmconrad
@ryanRfox

BitShares Core Release 3.0.0

27 Mar 01:57
8c1a78b
Compare
Choose a tag to compare

What’s New

Fixes

  • MCR Bugfix: Resolves a bug where the call price is inconsistent when the maintenance collateral ratio (MCR) was modified
  • Max Supply: Resolves a bug that could cause supply to grow beyond the intended maximum supply level.
  • Oversized Transactions: Resolves a bug that could allow transactions beyond the size limit.
  • Account Permission Bugfix: Resolves a bug that under certain circumstances a transaction signed by owner key of an account would be rejected

Where to Learn More

Who Should Update

  • All validation node operators are encouraged to upgrade prior to Protocol Activation: 23 APR 2019 14:02 UTC as this is a consensus protocol impacting release
  • All BTS token holders are encouraged to review this release, then vote to support block producers signaling their intention to upgrade prior to protocol activation

How to Update

Precautions

  • All validation nodes must complete their upgrade prior to Protocol Activation: 23 APR 2019 14:02 UTC
  • A blockchain replay will automatically be performed after the validation node software is restarted. This typically takes 90 minutes on a modern CPU

Obtain the Source Code

Build the Binaries

The binaries may be built by using your pre-existing process, or by following the standard instructions that can be found in the wiki:

Deploy the Binaries

Your standard process for deploying the node software may be used. No additional requirements or precautions will be required to deploy the new release.

Obtain the Docker Image

The latest Docker image may be found at BitShares Core Docker page and updated with:

docker pull bitshares/bitshares-core

Binaries

Binaries of the command line interface (CLI) wallet, node software, and delayed node are pre-built and available for download.

Platform SHA256 Checksum
Microsoft Windows 97559647e099c3768565f50cb5f43b0956afa6fd371b442aabdfb6e9acb62cb3
Mac 7c50d0a8f2eb5fdfd4c0c5d86d5bba076ec0acf1ccf256e70d2e4ef8010871eb
Linux 6f893f5bf5a08928c10d9adeaca92204ab150886dbe0da2102118e9aa5ab5a25

Changes

A summary of the tasks contained within Protocol Upgrade Release (3.0.0) follows:

Core Functionality

Description Issue Pull Request
Borrowing MPAs ignores max_supply setting 1465 1498
Call price is inconsistent when MCR changed 1270,1423 1324,1469,1493
Distribute Asset Market Fees to Referral Program (BSIP-43) 1268 1419
Hashed Time-Locked Contract (BSIP-44) BSIPS 103 1370,1475,1535,1538
Prevent oversized transactions 1573 1624
Account permission bugfix 584 1259

Build Process

Description Issue Pull Request
Build fails on macOS due to size_t 1590 1589

Release Contributors

@abitmore
@jmjatlanta
@oxarbitrage
@pmconrad
@OpenLedgerApp
@ryanRfox

BitShares Core Release 2.0.20190319

19 Mar 18:22
5bad558
Compare
Choose a tag to compare

The BitShares Core software has been updated to 2.0.20190319. The Core software is used to build the validation nodes that perform consensus of all transactions on the BitShares blockchain. This release includes only 1 bug fix; no new features are added.

Documentation for users may be be found at How BitShares Works.

Documentation for BitShares developers may be be found at the Developer Portal.

Who Should Upgrade?

All node operators are recommended to upgrade to fix the bug "plugins option ignored in config file" described in #1647

Upgrade Process

Precautions

No special precautions are expected to upgrade this release.

How to Upgrade from Source Code

Obtain the Source Code

The source code may be obtained by checking out:

Build the Binaries

The binaries may be built by using your pre-existing process, or by following the standard instructions that can be found in the wiki:

Deploy the Binaries

Your standard process for deploying the node software may be used. No additional requirements or precautions will be required to deploy the new release.

How to Upgrade with Docker

The latest Docker image may be found at BitShares Core Docker page and updated with

docker pull bitshares/bitshares-core

Binaries

Binaries of the command line interface (CLI) wallet, node software, and delayed node are pre-built and available for download.

Platform SHA256 Checksum
Microsoft Windows e224a73e43eff1fd2940c6d32d699ccd944571dc66cf140770a22406033a0e4b
Mac 40455f3eadf28a9fe1ba7fc03cc746bc90f89ded28ab85c40dbc7d6daa2443cb
Linux 7b6d9bbaa897f71709d425ddf07a583eca0f8afdf25f5a26538d2c84d1334b3d

Changes

The changes for the release are summarized below.

Node Functionality

Description Issue Pull Request
"plugins" option in config.ini is ignored 1637 1647

Documentation

Description Issue Pull Request
Support Boost version 1.69 1557 1587, 1648

Release Contributors

@jmjatlanta
@oxarbitrage

BitShares Core Release 2.0.190305

08 Mar 17:31
57c40ec
Compare
Choose a tag to compare

The BitShares Core software has been updated to 2.0.190305. The Core software is used to build the validation nodes that perform consensus of all transactions on the BitShares blockchain. This release includes only bug fixes; new new features are added.

Documentation for users may be be found at How BitShares Works.

Documentation for BitShares developers may be be found at the Developer Portal.

Who Should Upgrade?

All node operators are recommended to upgrade to benefit from fixes (1620, 1573).

Upgrade Process

Precautions

A replay will automatically be performed after an upgraded node is restarted.

How to Upgrade from Source Code

Obtain the Source Code

The source code may be obtained by checking out:

Build the Binaries

The binaries may be built by using your pre-existing process, or by following the standard instructions that can be found in the wiki:

Deploy the Binaries

Your standard process for deploying the node software may be used. No additional requirements or precautions will be required to deploy the new release.

How to Upgrade with Docker

The latest Docker image may be found at BitShares Core Docker page and updated with

docker pull bitshares/bitshares-core

Command Line (CLI) Wallet Binaries

A binary of the command line interface (CLI) wallet and other tools for Windows is pre-built and available for download.

Platform SHA256 Checksum
Microsoft Windows 82b5887e8f5f0887b8355d0f4fd04a1aae9320f251e6d86b08ea2901156ce634
Mac ff5ad996131e57bc377b3797e455ffd2693e0f7411a09711a85fb7ad98d677e4
Linux 2852519e43d53bfde21eb551cd4637a2219c65365fdfa5d3d1543d98459f4da6

Changes

The changes for the release are summarized below.

Node Functionality

Description Issue Pull Request
Empty 'percent_change' in get_ticker API 1620 1631
Additional check of transaction size in consensus code 1573 1586
Bump the database - Commit 7e8a6b9

Release Contributors

@jmjatlanta
@oxarbitrage

BitShares Core Release 2.0.190219

19 Feb 18:26
319d7b9
Compare
Choose a tag to compare

The BitShares Core software has been updated to the 201902 Feature Release. The Core software is used to build the validation nodes that perform consensus of all transactions on the BitShares blockchain. This release includes multple optimizations and bug fixes but does not include any changes to the consensus protocol. Numerous performance improvements have been made that will benefit all operators of validation nodes including block producers, seeds, and API nodes especially Elastic Search API nodes.

No upgrade or action is required by any users for this release.

Documentation for users may be be found at How BitShares Works.

Documentation for BitShares developers may be now be found at the new BitShares Developer Portal.

Who Should Upgrade?

No upgrade is required by any operator of a validation node. Yet many operators will benefit by upgrading.

All operators will benefit from improvements to performance (1079, 1472, 1095), enhancements (1550), and fixes (1118, 1461).

Operators of API nodes will benefit from enhancements (1051, 842, 1018), and a fix (1490).

Operators of Elastic Search API nodes will benefit from improvements to performance (1541, 1455, 1429).

Upgrade Process

Precautions

A replay will automatically be performed after an upgraded node is restarted.

How to Upgrade from Source Code

Obtain the Source Code

The source code may be obtained by checking out the 2.0.190219 tag

Download the source at:

Build the Binaries

The binaries may be built by using your pre-existing process, or by following the standard instructions that can be found in the wiki:

Deploy the Binaries

Your standard process for deploying the node software may be used. No additional requirements or precautions will be required to deploy the new release.

How to Upgrade with Docker

The latest Docker image may be found at BitShares Core Docker page and updated with

docker pull bitshares/bitshares-core

CLI Binaries

A binary of the command line interface (CLI) wallet and other tools for Windows is pre-built and available for download at BitShares-Core-2.0.190219-Windows-x64-cli-tools.zip. SHA256 Checksum: 294025a640a5aba4e3f4dc221f8b5018e59757ab4976158f3bb80caa06f83151

For Mac please download BitShares-Core-2.0.190219-macOS-cli-tools.tar.gz. SHA256 Checksum: e8768df6fd36caff1c5894c5a9962557a9c735d782b586ada0fb647837879bea

For Linux please download BitShares-Core-2.0.190219-Linux-cli-tools.tar.gz. SHA256 Checksum: 8a52c3e3522df1d537c4723b3cda21fa9a7fbf675a78269cd8e7765b250b550f

Changes

The changes for 201902 Feature Release are summarized below.

Core Functionality

Description Issue Pull Request
Add last vote time in account object 1393 1449
Update all asset-related API's to support asset symbol as parameter 1051 1272
Expand get_top_markets API to return more data fields 842 1549
(Human-readable message needed for assert) 1018 1531
get_account_history_operations fails with partial_history and stop at 0 1490 1494
database_api::verify_account_authority is broken 1366 1384

Node Functionality

Description Issue Pull Request
Make better use of multi-core servers 1079 1360
Setup Private Testnet --create-genesis-json creates witness_node_data_dir 1118 1529
Review and backport EOS PR 3392 packing/unpacking array-like types 995 FC 100, 103
Get_key_references performance issue? 1472 1499
Cache a pointer to account_statistics_object in account object? 1095 1462
Fix for errors while loading object_database - 1461
Avoid calling exit from within a library 1110 1529
About skip_fork_db flag 1313 1527
Change more 32 bit data fields to 64 bit 1206 1347

Node Plugins

Description Issue Pull Request
Add startup message to all plugins 1459 1502
[Improve plugin loader] PR 1427 1437
Add es-objects-start-es-after-block option - 1541
Add start-es-inserts-after-block option to elasticsearch plugin 1455 1458
Add an adaptor to es_objects and template function to reduce code - 1429

Command Line Interface Wallet (CLI)

Description Issue Pull Request
Capture Ctrl+C in cli_wallet when not in daemon mode 1193 1232

Build Process

Description Issue Pull Request
BitShares Core uses Boost::Signal, which is deprecated 1512 1503, 1514, FC 101
(Mac) std::min requires 2 matching parameters 1560 1561
Build warnings - throw within destructor 1246 1510, 1511
(OpenSUSE) Linking failure 1504 1504, 1516
Build simplification - 1547
cli_wallet build failure on Ubuntu 18.04 1418 1539
Fix build errors and a warning - 1421, [1426...
Read more

BitShares Core Release 2.0.181221

21 Dec 12:45
58c0c49
Compare
Choose a tag to compare

This is a bugfix release. Upgrade is strongly recommended for all nodes!

Fixes

Binary SHA256 Checksum

f775b1f26031d6e9b21507f1e73e150082a5df31f0ec8df835527b5ea3e72def
  BitShares-Core-2.0.181221-Windows-x64-cli-tools.zip

d55953556cb41e863aad914f751913b8fa7d551880fc861c82c4a797e2077803
  BitShares-Core-2.0.181221-Linux-cli-tools.tar.gz

66910240726d3ebf94f3d0121224f3575e3c7fd09d84e3363081a09b9581619d
  BitShares-Core-2.0.181221-macOS-cli-tools.tar.gz

BitShares Core Release 2.0.181127

27 Nov 01:46
5b23099
Compare
Choose a tag to compare

This is an emergency release to fix a stuck chain.

All nodes must upgrade.

Replay will happen automatically.

SHA256 Checksums:
BitShares-Core-2.0.181127-Linux-cli-tools.tar.gz
    c04daf2d879c65c12baf5b46fa30a444c06d677fe86d73ce7acb9cddad54c5f8

BitShares-Core-2.0.181127-macOS-cli-tools.tar.gz
    ba90de34905cbc24305060214229fc768b44c0ea7f968ca61b3a1e10ed3036d2

BitShares-Core-2.0.181127-Windows-x64-cli-tools.zip
    5f68e1efa32655fc428ca95c46fda5454e768e8c12f652f9a1e4f58fabdff852