Skip to content
Snippets Groups Projects
Commit 34b3abb7 authored by inertia's avatar inertia
Browse files

Production deploy for remaining top-level references

parent f4452785
No related branches found
No related tags found
5 merge requests!69Tutorials audit (RB),!66Tutorials audit (PY),!54Tutorials audit (JS),!41Tutorials audit,!25Refactoring misc steem 2
......@@ -105,7 +105,7 @@
examples:
- '`250000`'
links:
- <a href="{{ '/services/#services-steem-dao' | relative_url }}">Decentralized Hive Fund</a>
- <a href="{{ '/services/#services-dhf' | relative_url }}">Decentralized Hive Fund</a>
- <a href="{{ '/apidefinitions/#database_api.get_reward_funds' | relative_url }}">`database_api.get_reward_funds`</a>
- <a href="{{ '/apidefinitions/#broadcast_ops_sps_fund' | relative_url }}">`sps_fund`</a>
- name: HIVE_MAX_ACCOUNT_NAME_LENGTH
......@@ -463,7 +463,7 @@
- <a href="https://github.com/steemit/steem/pull/3272">PR#3272</a>
- <a href="https://github.com/steemit/steem/pull/3278">PR#3278</a>
- <a href="{{ '/apidefinitions/#broadcast_ops_update_proposal_votes' | relative_url }}">`update_proposal_votes`</a>
- <a href="{{ '/services/#services-steem-dao' | relative_url }}">Decentralized Hive Fund</a>
- <a href="{{ '/services/#services-dhf' | relative_url }}">Decentralized Hive Fund</a>
- <a href="{{ '/apidefinitions/#database_api.get_reward_funds' | relative_url }}">`database_api.get_reward_funds`</a>
- <a href="{{ '/apidefinitions/#broadcast_ops_sps_fund' | relative_url }}">`sps_fund`</a>
- name: HIVE_TREASURY_FEE
......@@ -474,7 +474,7 @@
- <a href="https://github.com/steemit/steem/pull/3272">PR#3272</a>
- <a href="https://github.com/steemit/steem/pull/3278">PR#3278</a>
- <a href="{{ '/apidefinitions/#broadcast_ops_update_proposal_votes' | relative_url }}">`update_proposal_votes`</a>
- <a href="{{ '/services/#services-steem-dao' | relative_url }}">Decentralized Hive Fund</a>
- <a href="{{ '/services/#services-dhf' | relative_url }}">Decentralized Hive Fund</a>
- <a href="{{ '/apidefinitions/#database_api.get_reward_funds' | relative_url }}">`database_api.get_reward_funds`</a>
- <a href="{{ '/apidefinitions/#broadcast_ops_sps_fund' | relative_url }}">`sps_fund`</a>
- name: HIVE_PROPOSAL_MAINTENANCE_PERIOD
......@@ -482,7 +482,7 @@
links:
- <a href="https://github.com/steemit/steem/pull/3272">PR#3272</a>
- <a href="https://github.com/steemit/steem/pull/3278">PR#3278</a>
- <a href="{{ '/services/#services-steem-dao' | relative_url }}">Decentralized Hive Fund</a>
- <a href="{{ '/services/#services-dhf' | relative_url }}">Decentralized Hive Fund</a>
- <a href="{{ '/apidefinitions/#database_api.get_reward_funds' | relative_url }}">`database_api.get_reward_funds`</a>
- <a href="{{ '/apidefinitions/#broadcast_ops_sps_fund' | relative_url }}">`sps_fund`</a>
- name: HIVE_PROPOSAL_MAINTENANCE_CLEANUP
......@@ -492,7 +492,7 @@
links:
- <a href="https://github.com/steemit/steem/pull/3272">PR#3272</a>
- <a href="https://github.com/steemit/steem/pull/3278">PR#3278</a>
- <a href="{{ '/services/#services-steem-dao' | relative_url }}">Decentralized Hive Fund</a>
- <a href="{{ '/services/#services-dhf' | relative_url }}">Decentralized Hive Fund</a>
- <a href="{{ '/apidefinitions/#database_api.get_reward_funds' | relative_url }}">`database_api.get_reward_funds`</a>
- <a href="{{ '/apidefinitions/#broadcast_ops_sps_fund' | relative_url }}">`sps_fund`</a>
- name: HIVE_PROPOSAL_SUBJECT_MAX_LENGTH
......@@ -502,7 +502,7 @@
links:
- <a href="https://github.com/steemit/steem/pull/3272">PR#3272</a>
- <a href="https://github.com/steemit/steem/pull/3278">PR#3278</a>
- <a href="{{ '/services/#services-steem-dao' | relative_url }}">Decentralized Hive Fund</a>
- <a href="{{ '/services/#services-dhf' | relative_url }}">Decentralized Hive Fund</a>
- <a href="{{ '/apidefinitions/#database_api.get_reward_funds' | relative_url }}">`database_api.get_reward_funds`</a>
- <a href="{{ '/apidefinitions/#broadcast_ops_sps_fund' | relative_url }}">`sps_fund`</a>
- name: HIVE_PROPOSAL_MAX_IDS_NUMBER
......@@ -513,7 +513,7 @@
- <a href="https://github.com/steemit/steem/pull/3272">PR#3272</a>
- <a href="https://github.com/steemit/steem/pull/3278">PR#3278</a>
- <a href="{{ '/apidefinitions/#broadcast_ops_update_proposal_votes' | relative_url }}">`update_proposal_votes`</a>
- <a href="{{ '/services/#services-steem-dao' | relative_url }}">Decentralized Hive Fund</a>
- <a href="{{ '/services/#services-dhf' | relative_url }}">Decentralized Hive Fund</a>
- <a href="{{ '/apidefinitions/#database_api.get_reward_funds' | relative_url }}">`database_api.get_reward_funds`</a>
- <a href="{{ '/apidefinitions/#broadcast_ops_sps_fund' | relative_url }}">`sps_fund`</a>
- name: SMT_MAX_VOTABLE_ASSETS
......
# Be sure to group each tool by testnet_id.
# Possible places to watch for new testnet tools:
# https://steemprojects.com/search/?q=testnet
# https://hiveprojects.io/search/?q=testnet
- name: Steemit, Inc. Live Testnet Endpoint
testnet_id: 46d82ab
url: https://testnet.steemitdev.com/
......
......@@ -9,9 +9,9 @@ Radiator is a Ruby API client to interact with the steem blockchain.
---
**Steem-JS** - [https://github.com/steemit/steem-js](https://github.com/steemit/steem-js)
**Hive-JS** - [https://github.com/steemit/steem-js](https://gitlab.syncad.com/hive/hive-js)
Pure JavaScript Steem crypto library for node.js and browsers. Can be used to construct, sign and broadcast transactions in JavaScript.
Pure JavaScript Hive crypto library for node.js and browsers. Can be used to construct, sign and broadcast transactions in JavaScript.
---
......@@ -21,15 +21,15 @@ Lightweight JavaScript library for creating and signing transactions. Works wit
---
**DSteem** - [https://github.com/jnordberg/dsteem](https://github.com/jnordberg/dsteem)
**DHive** - [https://gitlab.syncad.com/hive/dhive](https://gitlab.syncad.com/hive/dhive)
A Typescript Steem crypto library for node.js and browsers. Steemit Inc [also maintains a version of this library](https://github.com/steemit/dsteem)
A Typescript Hive crypto library for node.js and browsers.
---
**Beem** - [https://github.com/holgern/beem](https://github.com/holgern/beem)
A python library to interact with the STEEM blockchain. It includes the CLI tool beempy.
A python library to interact with the Hive blockchain. It includes the CLI tool beempy.
---
......
......@@ -2,7 +2,7 @@
title: Community & Help
position: 6
---
<!--
**Developer Advocate**
The members of the Steemit Inc. development team are currently the main contributors to the Steem blockchain software. They oversee the open source [Steem](https://github.com/steemit/steem) GitHub repository, and maintain many of the open source [libraries](https://github.com/steemit) that developers use.
......@@ -10,17 +10,18 @@ The members of the Steemit Inc. development team are currently the main contribu
Steemit’s [Developer Advocate](mailto:da@steemit.com) is here to make the process of developing for the Steem platform as smooth as possible. If you have any comments, concerns, or suggestions about how to improve the experience of developing applications with the Steem blockchain - please [reach out](mailto:da@steemit.com).
The D.A. receives a lot of emails, but will respond as quickly as possible.
---
-->
**SteemDevs Chat** - [https://discord.gg/B29Bbng](https://discord.gg/B29Bbng)
**HiveDevs Chat** - [https://discord.gg/B29Bbng](https://discord.gg/B29Bbng)
HiveDevs chat is a public Discord chat community where members of the Steem development community go to discuss Steem development, and other related topics.
SteemDevs chat is a public Discord chat community where members of the Steem development community go to discuss Steem development, and other related topics.
It is a great place to go to ask questions, meet other developers that are working on Steem projects, share tips and code snippets, and discuss the items you are working on.
This discord also has an accompanying Hive Community: [HiveDevs](https://hive.blog/trending/hive-139531)
---
title: Hive Keychain
position: 5
---
Hive Keychain is a browser extension solution to integrate web sites with the Hive blockchain.
**Installation for Hive Keychain on:**
* Google Chrome or Brave - [https://github.com/stoodkev/hive-keychain](https://github.com/stoodkev/hive-keychain) ([how to install](https://peakd.com/hive-keychain/@stoodkev/hive-keychain-beta-is-ready#for-users))
* Firefox - [https://addons.mozilla.org/en-US/firefox/addon/hive-keychain/](https://addons.mozilla.org/en-US/firefox/addon/hive-keychain/)
For information on integrating Steem Keychain into your own web application, see: [**Website Integration**](https://github.com/stoodkev/hive-keychain#website-integration)
......@@ -3,7 +3,7 @@ title: Hivesigner Libs
position: 4
---
Most people who will be implementing OAuth2 will want to find and utilize a library in the language of their choice. These libraries, while not necessarily built by Steemit, should support the Hivesigner API.
Most people who will be implementing OAuth2 will want to find and utilize a library in the language of their choice.
If you're wondering what Hivesigner is, go [here]({{ '/services/#services-hivesigner' | relative_url }}).
......@@ -14,4 +14,3 @@ If you're wondering what Hivesigner is, go [here]({{ '/services/#services-hivesi
An official javascript library for utilizing Hivesigner.
---
......@@ -3,6 +3,6 @@ title: Overview
position: 1
---
Steem has an active developer community that is constantly innovating on the blockchain.
Hive has an active developer community that is constantly innovating on the blockchain.
While the their presence on this page doesn't constitute endorsement,
it's likely a few of these projects could be beneficial for your Steem idea.
\ No newline at end of file
it's likely a few of these projects could be beneficial for your Hive idea.
---
title: Steem Keychain
position: 5
---
Steem Keychain is a browser extension solution to integrate web sites with the Steem blockchain.
**Installation for Steem Keychain on:**
* Google Chrome or Brave - [https://chrome.google.com/webstore/detail/steem-keychain/lkcjlnjfpbikmcmbachjpdbijejflpcm](https://chrome.google.com/webstore/detail/steem-keychain/lkcjlnjfpbikmcmbachjpdbijejflpcm)
* Firefox - [https://addons.mozilla.org/en-US/firefox/addon/steem-keychain/](https://addons.mozilla.org/en-US/firefox/addon/steem-keychain/)
For information on integrating Steem Keychain into your own web application, see: [**Website Integration**](https://github.com/MattyIce/steem-keychain/blob/master/README.md#website-integration)
......@@ -15,9 +15,9 @@ Interactive Steem API swagger, [open-source](https://github.com/eSteemApp/steema
---
**SteemSQL** - [http://www.steemsql.com/](http://www.steemsql.com/)
**HiveSQL** - [https://hivesql.io/](https://hivesql.io/)
A private Microsoft SQL server database with Steem blockchain data, subscription based, allows you to do flexible queries and analyze blockchain data.
A private Microsoft SQL server database with Hive blockchain data, subscription based, allows you to do flexible queries and analyze blockchain data.
---
......@@ -33,6 +33,6 @@ SteemPress is a WordPress plugin to allow you to automatically publish your arti
---
_**Many more projects and tools can be found at [https://steemprojects.com](https://steemprojects.com)**_
_**Many more projects and tools can be found at [https://hiveprojects.io](https://hiveprojects.io)**_
---
---
title: DHF
position: 5
---
#### Intro
The DHF (Decentralized Hive Fund) is an account on the Hive blockchain (currently [@steem.dao](https://hiveblocks.com/@steem.dao)) that receives 10% of the [annual new supply]({{ '/tutorials-recipes/understanding-configuration-values.html#HIVE_INFLATION_NARROWING_PERIOD' | relative_url }}). These funds are dedicated to Hive platform improvements.
Every day a portion of the HBD fund managed by the DHF is distributed to various proposals, depending on **a)** how much the proposal is asking for and **b)** how much approval the proposal has.
> The DHF was a concept proposed by [@blocktrades](https://hiveblocks.com/@blocktrades) to allow Hive users to publicly propose work they are willing to do in exchange for pay. Hive users can then vote on these proposals in almost the same way they vote for witnesses. It uses stake-weighted votes, but voters can vote for as many proposals as they want.
<sup>See original announcement, when it was called "SPS" on Steem: [https://hive.blog/steem/@steemitblog/hf21-sps-and-eip-explained](https://hive.blog/steem/@steemitblog/hf21-sps-and-eip-explained)</sup>
#### Tools
* [https://hivedao.com/](https://hivedao.com/) - Hive Proposals UI by [@dmitrydao](https://hive.blog/@dmitrydao)
* [https://peakd.com/proposals](https://peakd.com/proposals) - Hive Proposals UI by [@peakd](https://peakd.com/@peakd)
* [https://wallet.hive.blog/proposals](https://wallet.hive.blog/proposals) - Vote for your favorite Hive proposals without leaving the safety of wallet.hive.blog.
<!-- * [https://joticajulian.github.io/steemexplorer/#/proposals](https://joticajulian.github.io/steemexplorer/#/proposals) - Check who voted what. -->
<!-- * [https://steemit.com/@proposalalert](https://steemit.com/@proposalalert) - Follow this account to be notified of new proposals. -->
#### API
To access the proposal system by JSON-RPC request, see: [`database_api.list_proposals`]({{ '/apidefinitions/#database_api.list_proposals' | relative_url }}). Proposal creation by broadcast operation, see: [`create_proposal`]({{ '/apidefinitions/#broadcast_ops_create_proposal' | relative_url }}).
---
title: Steemit.com
title: hive.blog
position: 1
---
#### steemit.com endpoints
Steemit.com offers a few endpoints for getting common data. User profile and post JSON data is very convenient and simple by appending .json
Hive.blog offers a few endpoints for getting common data. User profile and post JSON data is very convenient and simple by appending .json
to your request.
Getting a particular user profile JSON:
```
https://steemit.com/@curie.json
https://hive.blog/@curie.json
```
User object
......@@ -112,51 +112,76 @@ User object
Getting a particular post JSON:
```
https://steemit.com/curation/@curie/the-daily-curie-12-13-feb-2017.json
https://hive.blog/curation/@curie/the-daily-curie-12-13-feb-2017.json
```
Post object
```json
{
"post":{
"id":1720643,
"author":"curie",
"permlink":"the-daily-curie-08-09-jan-2017",
"category":"curation",
"parent_author":"",
"parent_permlink":"curation",
"title":"The Daily Curie (08-09 Jan 2017)",
"body":"<center>https://s29.postimg.org/dgtsfe7if/curie2.png</center>\n## Introduction\n[Curie](https://steemit.com/steemit/@donkeypong/announcing-project-curie-bringing-rewards-and-recognition-to-steemit-s-undiscovered-and-emerging-authors) is a commu ...",
"last_update":"2017-01-09T12:20:15",
"created":"2017-01-09T12:20:15",
"active":"2017-01-11T22:44:57",
"last_payout":"2017-02-09T14:40:54",
"depth":0,
"children":36,
"children_rshares2":"0",
"net_rshares":0,
"abs_rshares":0,
"vote_rshares":0,
"children_abs_rshares":0,
"cashout_time":"1969-12-31T23:59:59",
"max_cashout_time":"1969-12-31T23:59:59",
"total_vote_weight":0,
"reward_weight":10000,
"total_payout_value":"0.000 SBD",
"curator_payout_value":"0.000 SBD",
"author_rewards":0,
"net_votes":519,
"root_comment":1720643,
"mode":"archived",
"max_accepted_payout":"0.000 SBD",
"percent_steem_dollars":10000,
"allow_replies":true,
"allow_votes":true,
"allow_curation_rewards":true,
"url":"/curation/@curie/the-daily-curie-08-09-jan-2017",
"root_title":"The Daily Curie (08-09 Jan 2017)",
"pending_payout_value":"0.000 SBD",
"total_pending_payout_value":"0.000 SBD"
}
"post": {
"id": 1965592,
"author": "curie",
"permlink": "the-daily-curie-12-13-feb-2017",
"category": "curation",
"parent_author": "",
"parent_permlink": "curation",
"title": "The Daily Curie (12-13 Feb 2017)",
"body": "...",
"json_metadata": {
"tags": ["curation", "curie"],
"users": [
"nextgencrypto",
"berniesanders",
"val",
"silversteem",
"clayop",
"hendrikdegrote",
"proskynneo",
"kushed",
"curie"
],
"image": [],
"links": [],
"app": "steemit/0.1",
"format": "markdown"
},
"last_update": "2017-02-13T18:00:51",
"created": "2017-02-13T18:00:51",
"active": "2017-02-14T16:19:24",
"last_payout": "2017-03-16T19:08:27",
"depth": 0,
"children": 9,
"net_rshares": 0,
"abs_rshares": 0,
"vote_rshares": 0,
"children_abs_rshares": 0,
"cashout_time": "1969-12-31T23:59:59",
"max_cashout_time": "1969-12-31T23:59:59",
"total_vote_weight": 0,
"reward_weight": 10000,
"total_payout_value": "23.678 HBD",
"curator_payout_value": "1.196 HBD",
"author_rewards": 167726,
"net_votes": 465,
"root_author": "curie",
"root_permlink": "the-daily-curie-12-13-feb-2017",
"max_accepted_payout": "1000000.000 HBD",
"percent_steem_dollars": 0,
"allow_replies": true,
"allow_votes": true,
"allow_curation_rewards": true,
"beneficiaries": [],
"url": "/curation/@curie/the-daily-curie-12-13-feb-2017",
"root_title": "The Daily Curie (12-13 Feb 2017)",
"pending_payout_value": "0.000 HBD",
"total_pending_payout_value": "0.000 HBD",
"active_votes": [],
"replies": [],
"author_reputation": "545477526857484",
"promoted": "0.000 HBD",
"body_length": 0,
"reblogged_by": []
},
"status": "200"
}
```
......@@ -4,15 +4,15 @@ position: 4
---
# Definition
Imagehoster is a Steem-powered image hosting and proxying service. Any image uploaded to, or proxied through, your Imagehoster has a copy stored within it. This means that the image continues to be available even if 3rd party sites go down or change their URLs. For as long as your instance of imagehoster is running the image will be available, anytime you need it.
Imagehoster is a Hive-powered image hosting and proxying service. Any image uploaded to, or proxied through, your Imagehoster has a copy stored within it. This means that the image continues to be available even if 3rd party sites go down or change their URLs. For as long as your instance of imagehoster is running the image will be available, anytime you need it.
The purpose of this tool is to provide a way to host and proxy images used by [condenser](https://github.com/steemit/condenser#condenser) to help maintain the privacy of the authors and general users accessing the images.
The purpose of this tool is to provide a way to host and proxy images used by [condenser](https://gitlab.syncad.com/hive/condenser#condenser) to help maintain the privacy of the authors and general users accessing the images.
Using ImageHoster will help limit access to IP addresses of the general user. It will also strip [image metadata](https://en.wikipedia.org/wiki/Exif) related to the author's geographical location. It also helps to verify that the original author uploaded the image they intended.
The ability to upload images on steemit.com was originally added in January, 2017. Please note that this tool **does not** store any image data on the blockchain.
Detaied information on Imagehoster can be found in its [repository](https://github.com/steemit/imagehoster/blob/master/README.md)
Detaied information on Imagehoster can be found in its [repository](https://gitlab.syncad.com/hive/imagehoster/-/blob/master/README.md#imagehoster)
## The API
......@@ -37,7 +37,7 @@ This returns a JSON object container the URL to the uploaded image, ex:
}
```
For this to succeed it requires a signature from a Steem account in good standing.
For this to succeed it requires a signature from a Hive account in good standing.
#### 2. Fetch an uploaded image <a name="fetch-upload"></a>
......@@ -70,12 +70,12 @@ The avatars follow the same sizing rules as proxied images, so you not guarantee
#### 5. Signing uploads <a name="signing"></a>
Uploads also require a signature made by a Steem account's posting authority. The account has to also be above a certain (service configurable) reputation threshold.
Uploads also require a signature made by a Hive account's posting authority. The account has to also be above a certain (service configurable) reputation threshold.
Creating a signature for `node.js` and with `dsteem`:
Creating a signature for `node.js` and with `dhive`:
```javascript
const dsteem = require('dsteem')
const dhive = require('dhive')
const crypto = require('crypto')
const fs = require('fs')
......@@ -87,7 +87,7 @@ if (!wif || !file) {
}
const data = fs.readFileSync(file)
const key = dsteem.PrivateKey.fromString(wif)
const key = dhive.PrivateKey.fromString(wif)
const imageHash = crypto.createHash('sha256')
.update('ImageSigningChallenge')
.update(data)
......@@ -101,7 +101,7 @@ process.stdout.write(key.sign(imageHash).toString() + '\n')
This imagehoster demo must be run through linux due to a dependency on the `make` commandline.
You will also require `node.js` and `yarn` to run
* git clone https://github.com/steemit/imagehoster
* git clone https://gitlab.syncad.com/hive/imagehoster
* Run `make devserver`
......
---
title: Steem.DAO
position: 5
---
#### Intro
Steem.DAO is an account on the Steem blockchain ([@steem.dao](https://steemd.com/@steem.dao)) that receives 10% of the [annual new supply]({{ '/tutorials-recipes/understanding-configuration-values#STEEM_INFLATION_NARROWING_PERIOD' | relative_url }}). These funds are dedicated to the Steem Proposal System (SPS) for platform improvements.
Every day a portion of the SBD fund managed by the Steem.DAO is distributed to various proposals, depending on **a)** how much the proposal is asking for and **b)** how much approval the proposal has.
> The Steem.DAO was a concept proposed by [@blocktrades](https://steemd.com/@blocktrades) to allow Steem users to publicly propose work they are willing to do in exchange for pay. Steem users can then vote on these proposals in almost the same way they vote for witnesses. It uses stake-weighted votes, but voters can vote for as many proposals as they want.
<sup>See original announcement: [https://steemit.com/steem/@steemitblog/hf21-sps-and-eip-explained](https://steemit.com/steem/@steemitblog/hf21-sps-and-eip-explained)</sup>
#### Tools
* [https://steemproposals.com](https://steemproposals.com) - Steem Proposals UI by [@dmitrydao](https://steemit.com/@dmitrydao)
* [https://steempeak.com/proposals](https://steempeak.com/proposals) - Steem Proposals UI by [@steempeak](https://steemit.com/@steempeak)
* [https://steemitwallet.com/proposals](https://steemitwallet.com/proposals) - Vote for your favorite Steem proposals without leaving the safety of steemitwallet.com.
* [https://joticajulian.github.io/steemexplorer/#/proposals](https://joticajulian.github.io/steemexplorer/#/proposals) - Check who voted what.
* [https://steemit.com/@proposalalert](https://steemit.com/@proposalalert) - Follow this account to be notified of new proposals.
#### API
To access the proposal system by JSON-RPC request, see: [`database_api.list_proposals`]({{ '/apidefinitions/#database_api.list_proposals' | relative_url }}). Proposal creation by broadcast operation, see: [`create_proposal`]({{ '/apidefinitions/#broadcast_ops_create_proposal' | relative_url }}).
images/honey-comb-icon.png

74.5 KiB

......@@ -73,7 +73,7 @@ spam on a blockchain, like everything else on a blockchain, is forever. Eww.
So for those tutorials we use a [testnet](https://testnet.steem.vc/) setup and maintained by user
[@almost-digital](https://steemit.com/@almost-digital). You can see its current status, and learn how to easily create
accounts and connect to it at [https://testnet.steem.vc/](https://testnet.steem.vc/). And depending on the day, you can
even use an outdated version of [condenser](https://github.com/steemit/condenser) to crawl it at
even use an outdated version of [condenser](https://gitlab.syncad.com/hive/condenser#condenser) to crawl it at
[https://condenser.steem.vc/](https://condenser.steem.vc/)
Credentials for demo accounts on the testnet are in [tutorials/configuration.js](tutorials/configuration.js)`.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment