A Secure and Decentralized Network for Peer-to-Peer Advertising

Jordhy Ledesma, [email protected]

v0.1.5 Aug 14, 2022


ABSTRACT. Bitfari allows advertisers to publish ads directly to digital screens and billboards. When millions of users are given this capability, they can customize their cities to better suit their needs. The resultant emergence is a new type of contextual advertising and communication system that makes possible many new interactions. 

1. Introducing Bitfari, The Internet of Places

Consider a system that ties all the screens in a city: screens from smartphones, desktop computers, electronic billboards, smart TVs, laptops, tablets, etc., and then connects all bystanders near smart screens, businesses, and users in productive manners. This system is envisioned as a new kind of social network that matches needs with solutions in every city or town in real-time.

Such a system could solve one of our most pressing problems: the world in which we live constantly requires our adaptation to an environment built for the masses, for no one and for everyone, a place that doesn’t acknowledge our individualities. Hence, we live in a constant struggle trying to fit ourselves into the roads, buildings, products, and services that have been built by others decades ago. How lovely would it be to have the world adapt to us? At least a little bit. Surely it would feel like a heavenly breeze. How nice would it be to live in a smart city, where once in a while you are acknowledged and presented with options that fit your lifestyle, preferences, language, and beliefs. Bitfari makes this possible.

Bitfari deploys a dynamic matrix of blockchain-connected screens to make a city that adapts to you. It does this by displaying contextual real-world ads and information systems at the command of individually empowered citizens.

With Bitfari installed on your smartphone or computer, you can press a button and translate the entire city to your native language, for example. As a tourist, this will allow you to navigate cities with ease, without depending on slow or buggy apps that try to fit too much information on small screens.

You could also block political ads, see relevant products without entering any store, and, perhaps most importantly, place your own ads and calls for action allowing you to start a movement or recruit locals that can help you. A system of live screens can create a layer of usability that makes the experience more bearable for all.

Most readers will naturally equate this concept with “Minority Report” ads, but Bitfari is exactly the opposite: ads placed by regular citizens, ads that don’t scan your face, don’t know your identity, and don’t sell you stuff you don’t want. Bitfari is more like Internet ads in real life plus relevant smartphone apps provided to you on a big screen. 

In your home, you probably have a computer with one or two screens. Outside, with Bitfari, you can experience using a public computer with an unlimited number of screens and apps. 


2. Background

Bitfari was originally called Tellfari. The first prototype was shown at the University of Virginia in 2012. After completing this prototype, subsequent research about adaptable cities was published that year in the case study “Best Buy: Investing in Language Learning”. That paper explored the economic benefits of providing personalized service in Spanish for Latino immigrants. Shortly after beginning selling in Spanish, Best Buy substantially increased sales in its Dallas store. They recognized that a large segment of the customer base was not being adequately approached.

But this problem transcends language: many more businesses are overlooking the individualities of people. Institutions left and right are ignoring the needs of diabetics, children, LGBTQs, the elderly, immigrants, tourists, the disabled, and so on. Writing the paper made me realize that other groups were also being left behind and that our findings could be applied to benefit many more people.

Bitfari was later prototyped using blockchain technology and is now presented as an open-source Internet layer to enhance online and offline communications now that Bitcoin-connected smart contract solutions such as Stacks 2.0 make possible the creation and operation of such a large and complex network. In simple terms, Bitfari can be thought of as a smart city operating system. In much broader terms, it is a public supercomputer whose memory is maintained by the Bitcoin network, its CPU powered by the Stacks network, and its displays managed by individuals, businesses, and institutions. Input and output operations are carried out by personal smartphones and tablets connected to the network pseudonymously.

3. Network Elements: Physical and Virtual Screens, Alter Egos, Channels, Social Oracles, Style Sets, Variables, and the Disclosure Matrix

Smart Screens are the most visible components of the network. This includes a set of physical and virtual screens that will house ads, content, and apps. Physical screens are conceived as inexpensive smart TVs and digital billboards that have, at a minimum a web browser and can execute basic JavaScript. Transparent screens (for storefronts) and parallel reality screens (for crowded places) can also be integrated seamlessly.

Virtual screens are used as placeholders for AR billboards, reachable from smart glasses connected to the Bitfari network, smartphones, or augmented reality windshields in cars.

Alter Ego is a login structure where the account identifier, a public key assigned to a user, a pseudonym, an avatar, a color, a hashed id, and a place of origin are stored. For example:

alterEgo1 = {publicKey, ‘BoyGenius’, ‘avatar15’, ‘Red’, ‘eeb7048c69b088739908f5f5144cd1f5’, ‘New York’ }

When displaying this user’s identity in the ad space we can expect to see something along the lines of:

BoyGenius of New York we have a 30% OFF Coupon for you! – and so on. Instead of a photo, the user gets to choose an avatar from a library. Color is also chosen to map the ad space that is targeting the use of his/her smartphone for maximum recall potential.

Channels include categories such as politics, tourism, history, shopping, food, navigation, religion, etc. This allows users to filter which type of interaction they are having with the city.

Style Sets include pre-approved fonts, vector images, and photos that make possible the fast approval of basic ads. More complex ads go through the social oracle approval process.

Social Oracles can either be people or machines. A set of social oracles are chosen at random to evaluate an ad’s fitness for publication within a time-space location. The number of social oracles chosen depends on the size, duration, channel, and distribution of the ad.

Variables contain the essential elements for ad programmability. They can contain the alter ego, city, location, date, interests, likes, keywords, and exploration lists of the user. Variables also store information regarding the weather, language of the ad, etc. A sample ad created with variables could look like this:

Hey, BoyGenius of New York! It’s raining, do you have an umbrella?



4. Grouping Ads in Channels: Community and Agency

Bitfari groups screens and billboards in networks. The default network is built for community ads. Here community members come together to showcase opportunities, requests for help, discounts, new openings, open houses, classified ads, and so on. 

Within the community network, there are also private screens. For example, private screens projecting ads, in-home smart TVs, and screens that enhance communication in apartment buildings, educational buildings, and museums.

While private, these screens can benefit from ads placed by the community, agencies, and a global network of Bitfari publishers. Gyms, churches, movie theaters, homes, schools, and apartment buildings can generate extra income by displaying curated ads while enriching their living and working spaces with digital billboards that contain message boards, calendars, contact information, private announcements, and website information. These screens not only reduce paper consumption, but they offset facilities expenditures and become a new stream of income and connection for communities.

Private screens are not visited by auditors and, instead, rely on private ad curation (operators can nominate a curator). Since posting ads cost money (about 25 cents or so for members and about a dollar a day for agencies), spammers are discouraged.

Community members have to scan a QR code containing a community key, this allows them to place ads at a discount (in this example ads for them are billed at $0, but the 25 cents cover transaction costs).

The story with agency ads is quite different. The term “agency” does not refer specifically to a regular ad agency. In this instance, it refers to organized publishers wishing to use the Bitfari network for commercial purposes.

Agency ads are primarily commercial and published by sophisticated actors whose livelihoods depend on the efficacy of contracted advertisements. Agency ads include more sophisticated ad composing, programmable ads, real-time ads integrated with Bitcoin wallets, personalized ads, datamart generated statistics, market research data, product and ad surveys (via auditing), hive ad distribution (two or more screens joined together), multi-screen advertisements, animations, and so on. Agency ads will provide many new types of contextual and personalized ads for everyone.

Agencies can distribute ads on any screen open to commercial messaging. They can create their own ad network using Bitfari, either by installing screens or by contracting digital billboards with other providers and moving them to their agency network. While agencies can opt out of auditing, foot traffic data, and ad engagement is still tracked by Bitfari. Also, users will be in full control of the data they share, always and will not provide any additional information to agency billboards.

There are several special situations for agency ads. Political ads in particular are highly controversial and can be blocked by our users. Should an agency choose to disable user preference tracking (via disclosure matrix retrieval, etc) then operators should know full well they chose to project an ad nobody wanted to see, instead of another one with the possibility of conversion. 

Casino, gambling, and adult agency networks should deploy screens in government-sanctioned places. Bitfari is not a product built to break the law. Screen operators are responsible for what their screens are showing. Bitfari is a peer-to-peer enabler that will make it possible for honest business operators to save money and gain a new audience, nothing more. By default, community screens block adult ads. Images are not allowed, their wording is blocked and auditors will flag adult ads. The way to show gambling/adult ads is by creating an agency network that includes a curated number of screens or billboards in private indoors or on government-approved sites. We envision many screen installers/curators working in these fields in other to lower the cost of customer acquisition.

By the same token, religious ads can also be part of an agency network created specifically for Christian, Jewish, or Islamic ads. For example, consider an installation of twenty screens in Christian churches, this small network can be curated in ten minutes, deployed on Bitfari as an agency network, and provide a veil of community for all members right away. The operators can keep the default price of ads, raise it or make posting free for other churches. They will be in control of easy and simple to create ad space to help visitors with navigation, information, communication, and security.

5. Programmable Ads

Agency ads allow the creation of programmable ads that change according to passersby. Digital billboards realize who is in their vicinity by querying the location pool of passersby which is updated every ten minutes.

After extracting the location pool, ads can run a probabilistic game and tailor ads to better profit from the group of people visiting the commercial hotspot. The main building blocks of programmable ads are HTML, variables, decision blocks, disclosure matrices, and exploration lists.  

Example of a Programmable Ad 

*$ALTEREGO   EXAMPLE:   Hi, *$ALTEREGO. Enjoy a 10% discount when you shop with us today.    

*$VAR1, *$VAR2, *$VAR3 up to *$VAR100   EXAMPLE:   *$VAR1 = TIME/12   Gives a value greater than 1 if we are past noon    

*$IF (*$VAR1<=1) GOOD MORNING   *$IF (*$VAR1>1 AND *$VAR1<=1.5) GOOD AFTERNOON   *$IF (*$VAR1>1.5) GOOD EVENING    

*$IF (*$VAR1<=1) *$HTML(‘<p>GOOD MORNING</p>’)  

You will have access to whatever the customer chose to disclose including gender, religion, age, residence zip code, location, pseudonym, etc.  

You will have access to the list of keywords or goals the customer has listed including offers, product preferences, what the customer is currently shopping for, budget constraints, etc.

6. Network Operation

The steps to run the network are as follows:

6.1 Screen/virtual screen dApp: Screens rotate ads, content, and apps as per their schedules and bookings. Screen operators are paid per booking-time unit in Faris, Stacks, or BTC plus, sometimes, a random bounty akin to a “block reward”.This is also referred to as “visual mining” from the vantage point of the screen operator.

6.2 User auditing dApps + social oracle validation: Ad placement is curated by humans and machines for consensus to avoid fraud, reward good ads, punish bad ads, and ensure screen operators are aware of any ads that are potentially unfit for publication. Human auditors are paid a base bounty plus, sometimes, a random bounty akin to a “block reward”. This is also referred to as “visual mining” from the vantage point of the auditor.

6.3 Ad performance dApps: A trail of ad performance is logged for each screen, providing advertisers with viewership and foot traffic data, history of reported fraud if any, ad price history, screen ad placement history, size, model, screen photos, live foot traffic photos, etc. Additionally, there will be facilities to see screens via live video displaying your ad.

6.4 Ad creator dApp: Ads are created using HTML5 and other standards. Images will ideally use SVG and are to be stored in IPFS for persistence. Images used in community ads will be preapproved by the BitfariDAO governance process (essentially a bi-yearly voting process for token holders). Links to non-persisted pages and Javascript will be limited to avoid cheating. Ad code should be decidable rather than Turing complete to avoid the insertion of undesired content.

Images used in agency ads will not be posted pseudonymously but via a chain of approval containing trusted sources. Agency images will undergo auditing unless the channel specifically forbids it. This modality is provided for private networks wishing to save some money and have full control over their screens.

6.5 Physical screen operators are paid after screen auditing (the screen is verified to exist, operating in normal conditions and projecting in a location as specified in the app) and after an ad has exhausted an agreed-upon period. Normally, this means operators are paid daily on or before 12:00 AM in the time zone configured for the area in which the screen has joined the network.

6.6 Screen dApp: Screen operators can choose to include apps or pause their screens. Operators can also include ads for their businesses on their screens at no cost to them.

7. Network Incentives

7.1 Bitfari doubles as a Game Show that Attracts Customers to Stores/Ads

It will not be atypical for a Bitfari economy prize winner to open up his/her wallet, engage with the platform for fifteen minutes or so and receive enough compensation to pay for a car. The spirit of bounties, payments, and promos is to actually award network participants, especially as the platform unfolds. The key to all this is human mining. Instead of distributing block rewards to computers, Bitfari allocates them to a treasury and then distributes them to several network participants at a convenient time. This can also be imagined as the bundled delivery of advertisements and sweepstakes, an element of gamification to entice visiting physical stores.

While Bitcoin is powered by a network of machines making all the money, Bitfari is powered by a network of humans getting rewards to entice them to respect one another, treat each other better, be more civil and work together towards shared goals. They do this by giving each other a voice, reaching agreements on what is acceptable public speech, and creating instant ambient networks around digital screens that double as beacons of the civil network. As people get a true, uncensored visible platform, conversations start taking place, movements start gaining traction, and commerce improves. While Bitcoin promotes miner honesty, Bitfari encourages public communication civility.

Money spent booking ads is distributed as prizes to go see those ads and go shop in the commercial districts that paid for those ads. Setting up a Bitfari screen is a vehicle for the economic revival of both the stores in the area as well as the customers participating in the system. 

7.2 Incentives for Network Operators

When a business installs a Bitfari screen, there is the potential to increase revenue in multiple ways. Showing ads, depending on the location, can increase revenue with little intervention. As network securers and community connectors, they will also receive platform bounties and customer tips.

A store owner might close shop and keep operating his/her screen to save money for a future business. As is stated in Bitfari’s code, businesses will receive:

    • One million free ad showings on screens of their city/market. This incentive will be half every four years.
    • One thousand Faris per-screen installation, upon auditor confirmation. This incentive will be half every four years.
    • 50% commission on every Bitcoin/Cryptocurrency exchange at their location. If they choose to install a virtual ATM on their screen. This incentive will remain the same.
    • VIP status for as long as the screen is operating.

Additionally, technicians installing Bitfari screens will receive:

    • One thousand Faris per-screen installation, upon auditor confirmation. This incentive will be half every eight years for technicians.
    • Two million free ad showings on screens of their city/market. This incentive will be half every four years.

7.3 Incentives for Auditors

Auditors are normal customers, tasked with the verification of ads, screens, or locations. Pre-auditors check ads from their homes, prior to showing, and auditors check live ads and screens in the wild. Without limitations, auditors are allocated 10% of the total bill for ad campaigns. This will be distributed as follows:

    • 5% distributed for pre-auditors. 2.5% for bounty winners plus 2.5% for all the pre-auditors. This incentive will always stay the same.
    • 5% distributed to auditors. 2.5% for bounty winners plus 2.5% for all the auditors involved. This incentive will always stay the same.
    • Physical screen auditors will gain 100 Faris per screen verification. This incentive will be half every four years.

For example, if Coca-Cola places a global ad with a budget of 1M:

    • Pre-auditors will be compensated with $50,000. Assuming one thousand pre-auditors are involved in the verification process, then each will get a deposit of $25. However, one of several pre-auditors will additionally win a bounty of $25,000 split evenly across the winners.

Auditors will be compensated with $50,000. Assuming one thousand auditors are involved in the verification process, then each will get a deposit of $25 USD. However, one of several auditors will additionally win a bounty of $25,000 split evenly across winners.

7.4 Incentives for Customers

Installing Bitfari on your phone, smart TV, or computer carries many benefits. Some of the incentives include:

1) The ability to place free ads (in certain cases).

2) The ability to place cheap ads in participating businesses.

3) Stacking rewards. 

4) About 2% of all revenue coming from ads placed in the customer’s location will go to a pool of prizes distributed as promos to consume products from local businesses.

5) Customers with as little as 10 Faris will be able to participate in the governance app.

6) Customers increase their chances of winning more as they fill out their preferences, disclosure matrix, and explore list. But they remain anonymous so they can benefit from the system while keeping their privacy.

7) Customers with as little as 100 Faris will get a VIP badge. VIPs will get special prizes from participating businesses. In turn, Bitfari will automatically tip businesses once they provide VIP service.

8) Customers can make extra income by reviewing ads from their homes. They are automatically eligible for bounties.

9) Customers choosing to receive multilingual service can translate menus, city information, and guides simply by choosing the appropriate language from their Bitfari app.

7.5 Some Notes on Incentives

This should give you a “flavor” of Bitfari’s planned incentives to incite technology adoption and network growth. Even though some of our users will choose to remain anonymous, incentives are planned to be distributed using traceable cryptocurrencies or stablecoins, making tax evasion hard. These incentives might change as part of our community governance process or due to applicable regulations.

8. Contextual Ads and Apps

Bitfari can display the most appropriate ad according to the disclosed interests of passersby. Concretely, the summation of interests Σ(Si) contains the union set of interest keywords while Σ(Ai) contains the union set of scheduled ads for the screen in question. Bitfari matches these two by using ad keywords, ad copy, and customer preferences.

9. Ad Booking, Review, and Acceptance

Ad booking is determined by the advertiser. He/she selects the place, time, and running conditions of the ad. However, auditors and social oracles will certify the booking. Auditors are people, social oracles, and machines. They work together to prevent fraud and keep screen operators out of trouble. While it is the responsibility of operators to review every ad, auditors can ease the burden by calling attention to certain issues. Spam, foul language, hate speech, and the like will be automatically banned by social oracles (small social contracts tuned to the language and culture of every area).

For example, consider the language-social-oracle. This is a machine oracle containing a list of negative words and phrases for a given language. Ads are automatically dismissed by code running this social oracle on and off-chain.

The screen operator/ad-miner can configure a probability of consensus γ in order to reject or approve ads. The probability of consensus can vary due to many factors: political climate, governmental regime, ad space location, etc.

In this case, the algorithm will simply reject proposed ads until the piece contains no negative words or phrases and a set of oracles has cleared the ad with a probability higher than or equal to γ. While this makes automatic ad booking and distribution feasible by adjusting γ for each area, we’ll simply call out poorly rated ads that at a minimum have cleared the social oracle review process and let screen operators decide on whether to take the ad.

Regarding images, they are immutably stored on IPFS. They can also come from a preapproved set. New images are reviewed by humans before being placed in the system.

10. Placement and Other Fees

Fees are calculated using region, foot traffic figures for a given season, type of ad, duration, screen size, auditing costs, transaction fees, and network maintenance fees. In some regions, some government taxes will apply.

11. Human Review

While ads are booked and distributed automatically, auditors are selected at random from a pool of application users in the area. These users will determine whether an ad is appropriate for the area. The human mining portion of the transaction fee will be disbursed to them automatically. This human review process includes auditors, pre-auditors, and screen reviewers. The review process occurs 24/7 with paid reviews occurring multiple times per day for each user.

Pre-auditors check ads and stock images before they are published and after machine review has cleared, auditing happens after the ad has been published but not widely distributed and screen review occurs after the initial screen set up and after a screen issue is reported by a critical mass of customers or auditors. Auditing carries a cost and could require the deployment of thousands of auditors to review a single ad schedule for global distribution due to cultural, or geopolitical issues.

At the discretion of the storefront or screen owner, an ad can be canceled if it enters into conflict with the owner’s religion or personal convictions or if it’s considered detrimental in any way to his/her business or the immediate surroundings. Ad owners will be refunded the placement fees for the remainder of the duration in the ad’s schedule.

11. Core Protocol Specs

## ADS ##



## SCREEN ##
GET_ADS(AD_KEY[]) — RETURNS Null or an array of links

VCHAIN(SCREEN_KEY[], CLIENT_KEY) – Returns vchain key

## AREA ##
Each area can hold up to 10,000 screens. Area codes include a code for the planet, a secondary code, and a sequential number. For example, the area for Times Square (midtown manhattan) is 010100001. Inside each area screens or billboards are stored in a boolean matrix.

Consider the matrix:

This matrix stores the availability of ad space on each screen, and information on whether a screen is full. Ad placement is a process of locating the area code(s) for placement, retrieving the matrix, and sending a request to a number of screens with apparent availability. A message is sent to these screens for booking. A disconnected screen will not receive the message and therefore additional messages need to be sent. This process continues until the ad has found an adequate number of slots. This process takes less than ten minutes.


BOOK_AREA(AREA, AD_KEY) – Books the ad for auditing in a particular area (city).
BOOK_COUNTRY(COUNTRY, AD_KEY) – Books the ad for auditing in a particular country.
BOOK_SCREEN(SCREENCODE, AD_KEY) – Books the ad for auditing at a particular screen.
12. Scalability

The availability matrix is purposefully built as a bitonic boolean sequence with a peak in city landmarks or urban hotspots. We have tested the system with random data for 100M screens with no major performance issues. Further work to scale the system into the billions of nodes could include the implementation of bitonic sorts for area availability series.

13. Fraud Prevention

Ad fraud is impossible in Bitfari. Please read our website section on ad fraud to become informed. Machines audit the ads, people audit ads and screens, algorithms cross-check them, and payments are held until confirmations are received. Advertisers receive photos and live videos of their ads showing, photos of foot traffic, etc. Public screens can be viewed on Google Earth, and screen operators are notified upon installation and ad roster changes of the various laws applicable in their jurisdictions. There is no way to trick the system because of a low surface of attack, automated validation, plus booking and review processes.

The ad is composed and sent to a screen and the owner chooses whether to show it. Images are taken from a gallery of preapproved assets. Foul language and incendiary phrases are also blocked by computerized auditors. Please read our website section on fraud prevention to become acquainted with the game dynamics governing auditing.

14. Virality and Ad Sharing

Depending on the area and channel, there will be a small-time allocation for advertisers to be placed for free on the screens of their choosing if their ad first reaches a good auditing score and then receives good reviews by users.  Ads can also be shared on the platform as well as shared on other social networks. The aforementioned process creates the possibility of reaching something akin to virality but in the physical world.

15. Double Feature

Billboard and smart screen ads will also be featured in the user’s smartphone (maybe as recommendations next to his disclosure matrix). Upon clicks and other engagements, this information will be logged to provide trackability to ad budgets deployed on conventional and digital billboards. Per action pricing, trackability, contextualization, programmability, virality, and instant deployment will make digital billboard advertising as predictable and efficient as its online counterpart, 

16. Hives, Daisy Chaining, and Embellishments

Smart TVs and external monitors can be daisy-chained or “hived” to create bigger ad spaces. This will result in higher earnings for screen operators. Ad space embellishments, useful decorations, transparent screens, etc will result in a higher payment. These are evaluated based on the feedback of the body of auditors who have visited the screen.

17. Space Donation

The network will allocate a percentage of space-time in order to provide free ad space to social interest causes as chosen by the governance polls. Screen operators shall be paid in full for these showings. 

18. Conclusion

We have proposed a system for decentralized global ad display and management. The solution will always work regardless of the presence of bad actors due to the economic incentives involved, machine filtering of spam and blatant ads, and stakeholders’ ultimate decision regarding the fitness of the ad.

Screens work all at once with coordination provided by smart contracts. Regarding privacy, ad publishers do not need to be identified, since they are judged on the basis of the quality of the message they want to broadcast.


(1) Eades, Kenneth M.; Dickey, Keith; Ledesma, Jordhy; Frazier, Jennifer; Sider, Duane; Johnson, Melissa – Best Buy: Investing in Language Learning http://store.darden.virginia.edu/best-buy-investing-in-language-learning

(2) Mark Bonchek, Harvard Business Review – How Top Brands Pull Customers into Orbit https://hbr.org/2012/03/how-top-brands-pull-customers

(3) Jamie Parfitt, 2012 – Citizen Advertising and the Transition Towards Consumer Collaboration

(4) Brand, J. (2013, March 5). Clarification of citizen advertising. (M. T. Choy, Interviewer)

(5) W. Feller, “An introduction to probability theory and its applications,” 1957. (6) Satoshi Nakamoto, 2008 – Bitcoin: A Peer-to-peer Electronic Cash System. https://bitcoin.org/bitcoin.pdf

(7) Nick Szabo – Formalizing and Securing Relationships on Public Networks https://nakamotoinstitute.org/formalizing-s7curing- relationships/

(8) Gonçalo Pestana and others – THEMIS: Towards a Decentralized Ad Platform with Reporting Integrity (Part 1) https://brave.com/themis/

(9) Thorsten Holz and others – The Dark Alleys of Madison Avenue: Understanding Malicious Advertisements https://dl.acm.org/doi/10.1145/2663716.2663719

(10) Brave Software – Basic Attention Token (BAT) Whitepaper – Blockchain-Based Digital Advertising https://bit.ly/3yc4lW2


Privacy Preferences
When you visit our website, it may store information through your browser from specific services, usually in form of cookies. Here you can change your privacy preferences. Please note that blocking some types of cookies may impact your experience on our website and the services we offer.
Share via
Copy link
Powered by Social Snap