How to Create a Decentralized Platform That Anonymously Publishes Content  by@wasyne

How to Create a Decentralized Platform That Anonymously Publishes Content

Abstract: In this paper, we address the reality that many art suppliers do not have a way to cooperate with others from far away -- especially with respect to receiving payments -- unless they rely on a trusted third party. We consider the impact of building a decentralized system, mainly for Art. All unique artworks in the process will be stored in decentralized ways. Even if they are censored, anybody can instantly restore them at any time. In addition, we have developed several new algorithms. They belong to the style of algorithm called the "Stitching Algorithm," a system that chooses operational governance by voting. This is useful in automatically deleting harmful or duplicate content and spot fudging the number of views. We calculated a diversity index based on neutral theories of community ecology to determine the order of each supplier for payroll. Finally, we present the establishing of an advertising-free entertainment business by selecting suppliers and accumulating funds at one time.
Akira Sakamoto HackerNoon profile picture

Akira Sakamoto


twitter social icon

“You must not fall.

When you lose your balance, resist for a long time before turning yourself toward the earth. Then jump.

You must not force yourself to stay steady. You must move forward.”

—Philippe Petit "On the High Wire"

Abstract: In this paper, we address the reality that many art suppliers do not have a way to cooperate with others from far away -- especially with respect to receiving payments -- unless they rely on a trusted third party.

We consider the impact of building a decentralized system, mainly for Art. All unique artworks in the process will be stored in decentralized ways.

Even if they are censored, anybody can instantly restore them at any time.

In addition, we have developed several new algorithms. They belong to the style of algorithm called the "Stitching Algorithm," a system that chooses operational governance by voting.

This is useful in automatically deleting harmful or duplicate content and spot fudging the number of views. We calculated a diversity index based on neutral theories of community ecology to determine the order of each supplier for payroll.

Finally, we present the establishing of an advertising-free entertainment business by selecting suppliers and accumulating funds at one time.

1. Introduction


Martin, a guitarist, has recorded his new song with the sound of the keyboard played by Vince in the next room. Martin was not very close to him, but the keyboard sound he played was so loud that he could record simultaneously without his permission.

Afterward, he had written the song and submitted it to a music magazine.

He got some cash as an award from YouTube. Later, he decided to send some Bitcoin to Vince because he found the front door of Vince's room had his Bitcoin address.

Some questions came to his mind. How can we reach an acceptable agreement for all involved to share the capital gained from such goods?

2. Collaboration Ladder Between Equal Content

The following chart describes the exchange of coins between person to person. Note that this story takes place before Martin got his prize.


  1. Martin and Vince are respectively standing at α and β. Martin sent $10 of Bitcoin to Vince's address as a fee for Vince's keyboard sound.

    Martin has uploaded it to the video posting application. Moreover, he writes the phrase on the submission page, "thank you, Vince," and Martin's Bitcoin address.

  2. The next day, Martin has noticed lots of emails with file attachments. Some emails say, listen to the fantastic fundamental sound I played instead of that boring key. He cannot judge the tone of a keyboard so much. The other emails were similar in-text content with keyboard sound source files. The total amount donated by mail senders is precisely $10. So, Martin's Bitcoin wallet has an extra $10. He brought it all to Vince and apologized for using his keyboard sound.

  3. After Vince heard about Martin's situation, he selected one sound of the ten sound sources. A man named Alan sent it. Vince put Alan's keyboard sound instead of his own and re-uploaded the song they made. When the upload was complete, Vince said he did not feel good about taking all of the $10 he received from Martin first.

  4. On Martin's behalf, Alan accepted Martin's $3 to use his guitar sound source. Vince transferred Bitcoin wallet α directly to Alan. That contains the first $10 by Martin.

  5. Vince has left on the stage of this situation.

  6. Martin forgot the sound of Vince's keyboard sound. Then he moved his pointer to Alan's sound source.

  7. Alan was slightly surprised and wanted to add some bass sound to his published song. He selected a bass keyboard soundtrack played by someone named "Fletch."

    As before, he tried to send Fletch $10 he had just received. However, unfortunately, Fletch does not have his address on the app. Instead, after transferring the total amount to Martin's wallet (wallet β), Alan told Martin to check with Fletch.

    Martin also felt sorry and disconnected wallet β containing $7 from his app. Then Alan added the sound of the bass keyboard has selected, uploaded it, and wrote the address of wallet α with the words, "Thanks for awesome bass, Fletch."

3.   Stitching Algorithms With Tanistry and Crowning

The diagram below shows what would happen if the previous chapter's methods were continued.


The dotted lines separating the diagram are called "Round." This shows the number of repetitions of alpha and beta pairs. Setting this number of rounds in advance is necessary to expect the final content size.

This chapter attempts to formalize how Vince chooses Alan's keyboard sound among several sound sources in the previous chapter. They would make this choice in three phases.

(1) Candidate: Each person sends content with a similar concept to the coordinator anytime. We set two limits: the number of people and the coin amount. The first limit, if the number of people exceeds the number of people gathered by previous candidates, the application will be closed.

However, in this restriction, the number of participants is not set because the first candidate term is not a ‘previous candidate’ yet. The second limit, the number of coins, is not powerful enough to shorten a deadline. A guild is the correct number of people at the right price with the same goal. Applicants who meet the deadline are named "Roydamna."

(2) Tanistry: To narrow down the population of the guild based on various criteria, we use several measures to screen out those who do not meet the requirements from within. The guild citizens would select more suitable content through a private price auction.

(3) Crowning: In the example story, Vince self-righteously chose Alan's keyboard sound source from the pile of others and took the initiative to him. In this concept, when a coordinator abandons his ambition to others, it is called "Crowning." When it finished Tanistry, this group gained two new indicators.

(A) Integrity Index

We explain how to evaluate others. "Red Hand Method" is a kind of ceremonial act to transform the collective population, merely a guild, into a prestigious population qualified to be Roydamna.

How small is the difference between self-rating and others shows how accurate the self-diagnosis?

The number of coins you pay when a Candidate is not only an entry fee but a self-evaluation of your content.


All participants form a single authentication token ring in reality. For now, we describe it in a straight line.


  1. The token on the left grades your content.

  2. You can check your price and increase or decrease the amount of your self-rating bet first as an entry fee. You also can stay as it is. However, you cannot specify the same amount as the price given by the left.

All tokens are shuffled.

  1. The token on the opposite right side would grade based on the left's initial grade. You cannot specify the same grading amount as specified in (1). They base the final rate for each content on one of the two grades. Look at the figure below on choosing which of the two tokens is used. The figures' ratings are with no distinction between left and right.


The self-rating value of the targeted content is within the difference between the two grading values by left and right, which is called "UprightToken (UT)." And, we must adopt the rating grade closer to the self-rating amount as a "Final Decision Rating (FDR)."

We named OutrightToken when the left and right ratings are higher or lower than the self-rating value. We compare the self-ratings by the left and proper token contents as FDR. If both ratings are lower, a higher self-rating will be adopted.

When the gap between self and others is more significant than the self-rating amount, the others' rated amount is more significant than the self-rating amount; external viewers can purchase from the smallest unit of Coin for the overflowed rated amount.

When those sales exceed the self-rating amount, the content owner will exchange the token with FDR for the original content submitter. The owner remains intact, but the right to reimbursement would move from the owner to the FDR rater. When the number of others' ratings is much lower than the self-rating, they risk revoking the ownership of the content. It is a mechanism for eliminating malicious content.


(B) Diversity Index

Owing to price each other, they consider the same amount of coins species in the same environment. Distinguishing between species is first (based on self-rating), and species later enter the land (based on others' rating.)


We divide each location into octaves. The larger the octave, the smaller the personnel capacity that place can hold.

Candidates with one octave or more minor differences between their self-assessment and others are indigenous to that place. Over two octaves, the Candidate has deemed an influx species that has come to the land with the amount of Coin evaluated by others.


(1) Richness measures the number of different organisms that exist in a particular area. It does not indicate the number of individuals of each species. Species with shallow populations are given equal weight as species with high populations.


(2) Evenness compares the similarity in size of the population of each of the species that exist. These two factors are considered creating Simpson's diversity index, which can stand probabilistic testing. A graph of the Relative Abundance Curve (RABC) is produced for each guild. Simpson's formula also determines the correlation coefficient from the graph.


Both Crowning and Tanistry are not an election. Initially, our system sets minimum standards and only collects head-counts and funds. That group gains some parameters required for consensus. In the circumstance where has no widely accepted reference point, if we need to establish a quantitative value index, we have no choice but to judge the quality of the guild itself.

Nobody knows what makes him choose his successor as the newer crown. We need to find as many pecking orders as possible to clear to a third party. We cannot change the calculation method during the game, not only for the diversity index itself. We call all these selection strategies "Stitching Algorithm."

4.   How Does KickerCoin control Limitations?

This flowchart shows the cycle of a guild ecosystem when just a candidate is closed before Tanistry starts.


The two subroutines in the figure can go back and forth between each other. We show each subroutine on the left when there are not enough coins (weak limit) and on the right when there are not enough people (firm limit).


The $10 coin tossed by Martin to Vince first is called a "KickerCoin" as its role in a game. KickerCoin, by increasing or decreasing itself according to the total amount of Coin paid by the previous candidates, sets the minimum amount of coin limitation for keeping the game fair. In particular, they calculate the limit on the maximum number of participants from this amount of previous KickerCoin.

It indirectly controls the number of UT that the opponent will get. The coordinator can choose a person to be a crown, and in exchange for KickerCoin he has, you can pocket the amount of the Coin the crown paid when his Candidate, but the moment you receive it, you must disappear from the stage, just like Vince. We always pay the Coin from the other side's wallet. KickerCoin is produced mainly by all contributors.

Coins act like water and Air in an ecosystem. All species bring in coins to produce an organic compound called UprightToken. KickerCoin is like a pumice stone that regulates a body of water.


If it is lower than expected, on the left side of the subroutine, reduce KickerCoin by that amount.


When the total amount of coins set is exceeded, on the right side of the subroutine, that amount increases KickerCoin.


This is how it functions as regulating valve.

5.   The landscape of Tower of Blocks

The exchange of coins between individuals in this game uses decentralized cash services, such as Bitcoin. When the content has been picked, the crowned person becomes a block creator.

We regard the blocks as reality, like Lego. We build the blocks on each wallet α and β. It forms a list structure of multiple blocks, jumping between the two walls in a zig-zag fashion to above, capturing alternate hashes each. The Integrity Index is used to calculate the Coin of UT.

The calculation method is:

UprightToken (UT) = Number of Person in (Own Block + Next Block) * Integrity Index

Diversity index does not directly contribute to the construction of UT but only ensures the relative status hierarchy among all elected crowns. They stack the number of Coins spent by one side on top of the wallet behind the UT of the other side. The Coin itself does not contain any payment information.

The relationship between the two visible token blocks and Coins is named "Tower of Blocks." They stack the two towers on top of each other as if they are competing. It looks like an invisible wall between the two. It would align the wall with the higher UT of the two sides. You intuitively make sense that the lower token cannot refer to the more elevated token on the other side.


You do not just wait to see how many coins they will throw into your wallet. It is a game on how much to feed up the other side's wallet. We swap the location of wallet α and β, easier to realize which side is dominant or inferior. Now, the two sides have capsulized.


This makes sure that a higher building is simply the winner intuitively. For more, we describe the following financial transaction metaphor to examine the exchange of tokens.


We issue a check-in name of someone next to you for payment to a competing bank. You deposit coins into an account at that competing bank. Let us forget about the coordinator for a moment here. It would not work much to affect this check-bank metaphor because his role is to store KickerCoin securely and temporally suspend token exchange.

  1. From a competing bank, someone is kicking KickerCoin in.

  2. Once their vault door is closed and safely stored, KickerCoin.

  3. We can separate the secure key when the safe door is closed.

  4. The amount of the Coin and check written in as the participation fee corresponds, but checks do not always say the entire amount. Before Crowning, the checks are intertwined. We cannot know who paid how much. We only know the total amount. Those tokens are what they sound like: a blank check that can manipulate the value of that person by another person's judgment.

  5. We can use this key for encryption and decryption.

  6. When the same amount of KickerCoin is deposited into Bank A's vault, a bell rings, and the bank A staff has been notified. When the key is handed over to the person selected as "crown," the check he wrote and the amount of his participation coin is public. KickerCoin is exchanged for his paid Coin and ejected Coin as a reward for the coordinator.

  7. Exchange batch of checks in bank B with a stack of envelopes in bank A.

  8. The diagram in Chapter 3 describes the one after block creator signs with the previous block. This operation makes it possible to stack envelopes containing checks turns UT by matching signatures. Here, exchanging tokens when Crowning accomplishes the same form of that authentication instead of a digital signature. Now, we switch the positions of A and B, and the same routines can repeat. The perspective from above presents a complete version of the exchange.


Try to shuffle the positions of each of the people and wallets on the ground. In this figure above, exchange the two wallets and exchange where A and B are standing. We get the following figure below.


6.   Who is Blooded?

The newly created challenger crown can take the chair of the crown with an older timestamp. As if stealing a crown, this act is called "Blooded."

Only the higher diversity index than the targeted block of the guild itself enables the theft of the older crown. None of the other indexes is essential in this situation. If you steal the crown, you can combine UT banished crown held with the latest UT you earned when Blooded itself and make all of that your own.

This is the only way to reduce the opponent's UT in the total game. The older block creator stripped of his crown now follows the same procedure as the coordinator. That means they must leave the stage. If failed, the attacked crown turned to be a new crown role again. This crown must choose the next coordinator as the opponent's side. You cannot steal the crown on your side, and an opposite crown was created just before you.


7.   Core Concept: Magnetic Separation

We need to kick out a "Cracker" on our making artworks. Here, the cracker means a person who threatens "freedom of expression" for money or just for pleasure. Before thinking about who they are, imagine the best possible participants to think more flexibly.

The best participants are those who are "highly talented, add value to the whole, cooperative with others, and receive little coin for maximizing overall capital"... This thought experiment etches the shapes of three imaginary crackers.

Three Crackers Problem

  1. $1 Big-Name Problem: a high-profile figure offering few coins.
  2. Got Talent Problem: low skill amateurs with significant capital.
  3. Byzantine Art General Problem: 51 % attack by performers.

(1) This is easy to deal with, because other people's reputation rises without exception based on the person's ability and fame, if more than a majority, or more than $2, is bought by another person, the token (the right to refund) is quickly taken away. This would not be an infinite increase if there were more than one. From this simulation, you can understand that it is not realistic. Due to a less diverse index, "One-Dollar Pirate" will steal his crown in no time.

(2) There is nothing wrong with throwing in a big coin. However, if other people's evaluations are significantly dissociated, i.e., if the content is regarded as too cheap, the ownership of the content itself may be lost. The content may be deleted for no use. If there is more than one Candidate, the limit of the total amount of Coin, which is a weak limit during the Candidate process, might be reached quickly, and the number of candidates would not be increased. Even if selected, the coordinator will take the maximum amount of Coin. The simplest way to deal with these problems is to keep acting honestly, paying self-rating-coins on self-awareness, and following your heart to measure the value of a person's content correctly.

(3) Figure out the problem: 51% of attacks on the game, and you will get a clue to the solution. Will someone take the coins and run away? The risk is that a particular group can take coins as much as they like. We explain a more detailed discussion for avoiding this risk in chapter 9.

Here is the core concept of the entire game, called "Magnetic Separation." This concept shows a relationship between Coin and content. When the contents are holding each other's hands, the Coin can move freely; when separated, the Coin is minted into one large Coin as never carried away. We would design all incentives for this concept.


8.   Design the Incentives for Refunds

There is always a way to keep the game going unless one side admits defeat itself. Realizing how UT is calculated, you can see the number of UT is still unfixed because no token has been exchanged at that moment. Only after KickerCoin is kicked up to other's wallets, the latest block can turn to be UT. No wonder no equally stable state can exist.

To be more precise, the total amount of Coin paid by both sides and the accumulated UT can live each in no steady state. The Coin continues to grow in the same way, leveraging KickerCoin exchanged during the Crowning process, except for the negative value of the Coin refunded when someone exits the stage. Setting a mutual index for winning or losing should lead to designing the incentives to induce a winning side to decide to finish. Review the main termination steps before creating the incentives.

(1) Starvation: When the Candidate does not get enough coins and participants, and if the amount of KickerCoin is not equal to the amount of KickerCoin after the tender offer.

(2) Blooded Failed: When the maximum number of people calculated from KickerCoin exceeds the difference of the UT, that cannot be overtaken before KickerCoin is kicked. Primarily right after blooded fails.

(3) Consensus: When both sides agree to win or lose after getting enough rounds.

There are two kinds of victory: Complete victories and partial victories.

Complete Victories: this victory is named "Crowning Win." They achieved this when the tower of UT was higher, and the coin building we paid was also higher than the other side. The crown with the highest diversity index (i.e., crowns with the lowest loss ratio) will receive the highest amount of Coin. The crown gets the reward earlier than anybody.

The owner of the token graded them would receive the second. If launched a tender offer has been bid, the outside purchasers also receive their share. The loser's crowns, their rater, and the third party buyers on the loser's side cannot receive, but they can refund the rest candidates the coins they paid for themself. Content before a refund is called "Monolithic Content." After a completed refund, the content's token is called a distributed recipe. The blocklist has turned into a recipe published in the real world. Anyone can share it at no charge.

Partial Victories: when the tower of UT is lower and the building of the Coin is higher, we can decide ourselves win, which is called a "Bloody Win." The sum of the Coin from both sides becomes a solid-one-tree, and the game takes the form of carried-over.

The monolithic content does not turn to be a distributed recipe yet. When different kickers play the various games using the same wallet simultaneously, that amount of Coin is also added together. Multiple blocklists like those below line up according to the coin total itself.


9.   Re-collaboration by Multiple Layers

After being carried over, each crown takes a journey to find the next collaboration partnership. It is named "Continental Connection (CC)." They walk randomly to secure their place in the world with their UT across the continents with a unique environment. Those attributes are quality and type of content itself, and the amount of Coin owned.

We call any monolithic content a "Ring." The standard for CC is that the targeted ring must have not yet been paid out, not shared in public as a distributed recipe, and has a lower coin total than the coin total of the challenger ring you belong to.

Only those crowns with positive and negative poles can connect with other crowns. The targeted ring is also asynchronously tied to a completely distinct ring from the pair you belong to with another crown to make up the "Monolithic Ring."


Each crowns select one Candidate based on their independent judgment. There is no agreement between the two sides in the ring yet.


Challenger ring sends a message to the targeted ring, and a two-way vote for pull or push comes to the targeted ring.

As illustrated in the figure, three crowns in the own ring are positive, and two crowns in most of the targeted rings have the opposite negative flag. If the challenger and targeted ring got 101% or more agreement, each pair of the crown is supposed to have a valid vote in their ring.

Once CC is formed, the number of UT gained must be swapped between two sides, each on the same ring. The total amount of Coin might be roughly doubled, and the group on the challenger ring can restart with the situation reversed.

When the game is restarted, the difference between the Coin of the two players becomes just KickerCoin for the next game, and both players have the same amount of coins allocated, which prevents them from making a refund without taking the following new action.

We will issue a new coin equal to the total amount of Coin the targeted ring had. A ring with the highest coin total would get the decision-making authority.

Failing CC means the bloody winner should turn to be a "bloody loser". The loser group must hand over the initiative to the crown with the most recent timestamp on the opposite group.

The targeted ring would receive the difference of Coin, the equivalent of KickerCoin, as a reward. CC has the effect of extending the time it takes for the winner to be decided but has the same risk as failing Blooded.

The Byzantine Art General Problem

Not so many situations require that multiple people in the same position decide far from each other. Unlike in the beginning, when established by a chain of individual decisions, multiple crowns own only a single monolithic content.

The following new decision should need a consensus of the same number of the crown. Such a situation must only exist after the carried over.

CC integrates dogmatic towers in completely separated environments by persons with different backgrounds. Even a conspiracy of 51%, we have no mechanism on the system must dam it up.

A dogmatism would encourage another dogma. Our policy prevents us from the danger of being attacked by speeding up and expanding dogma. Nevertheless, one-time dogma may produce a good one. Thus, we have our own "minting policy" to prevent it from happening continuously.

Our system believes that a big holder should always take significant risks, work for maximizing their overall profits other than money, and encourage another gifted person by throwing coins at them.

They must take the risk of creating a larger KickerCoin. If they take less risk on themselves, the policy will newly mint more Coin. Eventually, increasing the number of holders in total and its spread would solve this problem.

10.    Never be Censored

We have no security concerns since we exchange coins and tokens using Bitcoin or another crypto. Similarly, only the supplier can touch the original data for distributed recipes. As soon as they auto-generated the link, it is encrypted, and it distributed the formula to everyone involved.

Even if the content uploaded to an open central server-style website is censored, distributed recipes can immediately regenerate it based on the map to each material.


11.   Taste of the Ad-Free World

Think about how we can make it work as entertainment, moving to the real world. The most radical difference is that the performers paid that funds themself. Even if you count it as an initial cost, they can gain more in advance. Since we distribute the revenue earned from the monolithic content through a fair consensus, we need no advertising to secure payment. It does not need a ticket collector or a gate to separate spectators from onlookers.

We clarify the new place to this entertainment system by classifying one into three grounds. Each content has three parameters: Time, Space, and Philosophy: buy or sell, the two opposite poles attract each other like a magnet. Which of these three indexes you focus on would determine the ground stage. Each index is like a hook as detachable, unlike a chain.

The Viewpoint of Ground 1

Have you ever seen a busking in the station? Almost the same. Slightly different in that the art creator has a philosophical hook, concealing some coin in his boots.


The Viewpoint of Ground 2

The time hook also has connected. The internal angles are 90 degrees, not actuality, but only for the convenience of expression. Suppose you need to find an actual location, a place where has a gigantic wall.

You must show that there are no other suppliers where you are standing objectively, in the corner of a building, a large support pole, and places with various boundaries, for example.


The Viewpoint of Ground 3

A giant pound cake surrounds real estate. Then you can stage it in four different ways. If more than three parameters are hooked, the space we share is fixed. This means that all participants share the same area.

We can freely attach performers from the other side of the world to the bottom row. However, the top low always must have performers as real human beings. The room itself is a vast vault that serves as secure storage for coins and tokens. It does not matter if that wall has windows or not.


The following is a more detailed description of the exchange procedure in Ground 3. This is a view from above.


  1. Not all participants are selected to go to the stage.

  2. Coin and token can come and go through walls, of course.

  3. The act of moving from one stage to another through the window is Blooded.

  4. You cannot directly move to another side stage because the stage is UT we created itself. If you need to point to someone else's UT with an older timestamp, you must exchange tokens in a building room first and go through the diversity index screening even if the height of both UTs is the same. We can gradually create larger-scale works by starting with relatively small-scale ones and connecting them organically using hooks. Repeated CC makes an informative recipe.

12.   Conclusion

We have presented a decentralized platform that anonymously publishes content without trusting malicious central authorities, and the mechanism itself triggers a connection between products we have never seen before.

Distributed recipes are beneficial for anyone keen to collect content continuously because a clear rewards consensus weaved into it.

There is no need to fear unauthorized or modification use and "feeding censorship" of advertisers.

Picking new content with Stitching Algorithm makes them secure funding in advance and easily localized and expanded according to demand and the number of participants. These great incentives are a vital requirement for all unborn intangible cultural properties.

Shihon will be a meaningful first App after Satoshi. It boosts a feeling of unity on Art suppliers, by paying for itself with no censor and Ad-free!



The Unified Neutral Theory of Biodiversity and Biogeography Stephen P. Hubbell Princeton University Press 2001

Putting Auction Theory to Work (Churchill Lectures in Economics) Vince Milgrom Cambridge University Press 2004

Repeated Games and Reputations Long-Run Relationships by George J. Mailath, Larry Samuelson Oxford University Press 2006

Bitcoin: A peer-to-peer electronic cash system Satoshi Nakamoto 2008

Mechanism Design: A Linear Programming Approach (Econometric Society Monographs Book 47) Rakesh V. Vohra Cambridge University Press 2011

Bitmessage: A Peer‐to‐Peer Message Authentication and Delivery System Jonathan Warren 2012

Ethereum White Paper A Next Generation Smart Contract & Decentralized Application Platform Vitalik Buterin 2013

Distributed Systems: An Algorithmic Approach, Second Edition Sukumar Ghosh Chapman and Hall/CRC 2014

Classical and Spatial Stochastic Processes: With Applications to Biology Rinaldo Schinazi  Birkhaeuser 2014

The swirlds hashgraph consensus algorithm: fair, fast, byzantine fault tolerance leemon baird swirlds tech report swirlds 2016

Solana: A new architecture for a high performance blockchain v0.8.13 Anatoly Yakovenko 2017

Token Economy: How the Web3 reinvents the Internet Shermin Voshmgir, BlockchainHub Berlin 2020

react to story with heart
react to story with light
react to story with boat
react to story with money

Related Stories

. . . comments & more!