Avatar
Max
b7ed68b062de6b4a12e51fd5285c1e1e0ed0e5128cda93ab11b4150b55ed32fc
Praxeologist ~ Cryptoanarchist ~ Cypherpunk
Replying to Avatar Vitor Pamplona

#Amethyst v0.86.0: Draft Support

This version adds support for draft notes autosaved on your relays, a new simplified UI choice on Settings, changes the Discover tab algorithm to show the latest of chats and communities and much more.

Features:

- Draft notes for feeds, replies, live streams, public chats, NIP-04 DMs, GiftWrap DMs, polls and classifieds by nostr:npub1w4uswmv6lu9yel005l3qgheysmr7tk9uvwluddznju3nuxalevvs2d0jr5

- Adds autosave for Drafts by nostr:npub1w4uswmv6lu9yel005l3qgheysmr7tk9uvwluddznju3nuxalevvs2d0jr5

- Adds edit draft in the dropdown menu and the long press popup by nostr:npub1w4uswmv6lu9yel005l3qgheysmr7tk9uvwluddznju3nuxalevvs2d0jr5

- Adds a Draft feed screen for all posts

- Adds new algorithm to parse OpenGraph tags by nostr:npub168ghgug469n4r2tuyw05dmqhqv5jcwm7nxytn67afmz8qkc4a4zqsu2dlc

- Adds a Simplified UI setting to both feeds and chats

- Moves the username play button to the profile page.

- Adds link to the version notes when clicking in the version in the drawer

- Brings new git Issues and Patches to the Notification

- Filters out too many reposts of the same note when on the main feed

- Updates the bootstrap relay list

- Adds missing classes to support WebServer connections in the Video Playback

- Slightly reduces line height for improved readability

- Reduces the space between chat bubbles.

- Migrates shareable links from habla.news to njump.me

- Restructures the Discover Tab to show the Chats and Communities with the most recent new content.

- Adds a bot field to the user info

- Adds k-tag to the Deletion events

- Adds button to load Zap Splits from the cited users in the text

- Several accessibility improvements by nostr:npub1e2yuky03caw4ke3zy68lg0fz3r4gkt94hx4fjmlelacyljgyk79svn3eef

Bug Fixes:

- Fixes the post cut-off when the post has massive string chars without spaces or new lines

- Fixes missing Fhir Classes on Release

- Don't show the button to edit the post if the author of the original post is not the logged in user

- Fixes crash parsing multiple results from Amber by nostr:npub1w4uswmv6lu9yel005l3qgheysmr7tk9uvwluddznju3nuxalevvs2d0jr5

- Fixes the load of edits on a new edit proposal

- Fixes forking information kept from a previous post

- Fixes search on binary content

- Fixes space after clickable user display

- Centers Blank Note when post was hidden by the user.

- Accepts JSON events with escaping errors

- Fixes the parsing of user metadata events several times due to large coroutine backlog

- Fixes Scheduled Tag in LiveStreams

- Fixes the isOnlineCheck for nostr nests.

- Fixes sorting contract issues when follow status and user names are the same between keys

- Fixes tickmarks on dropdowns

- Checks if a Classified is wellformed before rendering

- Fixes size and alignment of the text when the live stream video is not present.

- Fixes some imports for benchmarks

- Fixes infinite Quotation issue (3 quotes are allowed).

- Fixes crashing with too many videos in quoted posts.

- Fixes double Show More when the user has hidden a post and ALSO the user's followers have reported the post.

- Only shows OTS to the respective Edit

- Fixes a bug with the latest version of jackson

- Avoids showing machine-code errors when paying for zaps on external wallets

- Fixes too strict timing constraints for new posts (accepts up to a minute in the future)

- Fixes following of geotags

- Fixes lack of zap amount refresh after zapping a note.

- Fixes videos not being able to seekTo the zero position.

- Fixes layout issues of Blog Post summaries when images are not present.

- Doesn't show edits of blog posts in the User's Profile

- Fixes Amber's deep sleep: Adds a lifeCycleOwner listener to register external signers on resume

- Fixes missing context in some replies to blog posts.

- Adds a space after the Channel header in the reply rows

- Centralizes the counter after the list of participants in a live event.

- Fixes double mention to Community headers when seeing a reply to a community post.

- Fixes Chat preview images when no image has been set.

- Fixes the display or Zap Events when All Follows is selected in Notifications

- Fixes the reply event finder for the reply row of text notes

- Makes hidden cards full width on the discovery feed

- Fixes the width of muted messages on chat feeds.

- Fixes the feed updates after list selections on the Discovery pages.

- Realigns the reaction icons and texts between main feed and video feed.

- Fixes garbled URL preview for non-UTF-8 HTML by nostr:npub168ghgug469n4r2tuyw05dmqhqv5jcwm7nxytn67afmz8qkc4a4zqsu2dlc

- Adjusts icon sizes on the galleries

- Avoids publishing with two equal `t` hashtags when the user already writes them in lowercase

- Limits the size of image previews from opengraph from being too big

- Fixes NPE with the cached state.

- Increases the push notification max delay to 15 minutes

- Fixes controller comparison for keep playing

- Fixes tag markers for replies in DMs

- Fixes layout of the reply row in chats

- Fixes lack of blurhash preview in some videos

- Fixes the lack of following mark on user pictures in chats

- Fixes the UI spacing for channels

- Fixes the use of filters that didn't discriminate the relay type setup

- Holds the state of Show More when switching edits and translations

- Renders DMs and live chats in the feed if they show up there

- Fixes contract violation when sorting users

Updated translations:

- Spanish by nostr:npub1luhyzgce7qtcs6r6v00ryjxza8av8u4dzh3avg0zks38tjktnmxspxq903

- French by nostr:npub106efcyntxc5qwl3w8krrhyt626m59ya2nk9f40px5s968u5xdwhsjsr8fz

- Dutch by nostr:npub1w4la29u3zv09r6crx5u8yxax0ffxgekzdm2egzjkjckef7xc83fs0ftxcd

- Swahili by nostr:npub1q6ps7m94jfdastx2tx76sj8sq4nxdhlsgmzns2tr4xt6ydx6grzspm0kxr

- Chinese by nostr:npub1raspu6ag9kfcw9jz0rz4z693qwmqe5sx6jdhhuvkwz5zy8rygztqnwfhd7

- Bengali by nostr:npub13qtw3yu0uc9r4yj5x0rhgy8nj5q0uyeq0pavkgt9ly69uuzxgkfqwvx23t

- Hungarian by nostr:npub1ww8kjxz2akn82qptdpl7glywnchhkx3x04hez3d3rye397turrhssenvtp

- Czech, German, Swedish and Portuguese by nostr:npub1e2yuky03caw4ke3zy68lg0fz3r4gkt94hx4fjmlelacyljgyk79svn3eef

- Arabic by nostr:npub13qtw3yu0uc9r4yj5x0rhgy8nj5q0uyeq0pavkgt9ly69uuzxgkfqwvx23t

- Thai by nostr:npub1tr66yvqghfdgwv9yxhmg7xx6pvgvu5uvdc42tgdhsys8vvzdt8msev06fl and nostr:npub1vm0kq43djwdd4psjgdjgn9z6fm836c35dv7eg7x74z3n3ueq83jqhkxp8e

Performance Improvements:

- Switches Robohash to Precompiled SVGs in order to reduce the memory burned of creating Strings with SVGs on the fly

- Restructures Data Access filters and LocalCache to use a ConcurrentSkipList instead of ConcurrentHashMap

- Only download video, image and audio files in NIP-94

- Updated hashtag icons for performance

- Avoids checks if a filter has changed before generating JSon strings

- Cleans up User Metadata upon receipt instead of in every rendering

- Simpler/Faster UserDisplay renderings

- Reduces video cache from 10 to 4 videos

- Removes coroutine use for Hashtags

- Brings the ZapForwarding icon to Compose

- Simplifies the algorithm to check if chatroom sender intersects with the follow list

- Avoids serializing temporary fields on Quartz

- Refactors views to the video and chat feeds

- Restructures NoteCompose for performance

- Restructures markAsRead to minimize threading cost

- Adds a large benchmark test for duplicate events

- Optimizing the performance of Highlight rendering

- After memory cleanup, only trigger liveData when it actually changes

- Minimizes memory use to calculate zaps

- Avoids triggering an error when decoding invalid hexes

- Reduces the amount of co-routines being launched in each LiveData update

- Migrates channel list and channel notes to LargeCache

- Removes the use of data classes to speed up comparisons

- Improves Nostr filter to bring public chat messages and avoid public chat creation and metadata updates

- Removes jsoup from dependencies

- Removes the need to observe author changes to event after loaded

- Turns hashtag icons into programmable vectors

- Moves the Following Vector to a native composable

- Removes unnecessary modifier layouts from the top bar

- Uses the cached thread pool instead of the scheduled thread pool for translation services

- Avoids launching coroutines that were just launched

- Makes a cache for Media Items

- Only changes the keep playing status if different

- Reduces recompositions after video/image hash verification

- Avoiding feed jitter when pressing the notification button twice

Code Quality Improvements:

- Breaks massive NoteCompose down into each event type

- Removes the release drafter plugin on actions. Too buggy

- Removes dependency of the Robohash from CryptoUtils

- Improves Preview helper classes

- Updates secp256k1KmpJniAndroid, compose, zoomable, media3, jackson and firebase libs

- Updates AGP to 8.3.1

- Deletes the old Settings local db

- Refactors some of the old display name structure

- Refactors Relay classes.

- Isolates the LargeCache forEach method to allow quick time measurements on filters

- Reorganizes classes in the commons lib

- Fixes test cases for nip96 uploaders

- Removes unused addMargin param

- Refactoring caching systems for the Compose layer

- Aligns the BOM between implementation and tests

- Refactors the use of dividers out of components

- Refactors composables to load events, check hidden and check report

- Fix Kotlin encryptDecryptTest to decrypt with swapped private and public keys to follow NIP-44 documentation by nostr:npub1yaul8k059377u9lsu67de7y637w4jtgeuwcmh5n7788l6xnlnrgs3tvjmf

- Finishes the migration of People List updates from LiveData to Flow

- Migrates all Refreshable feeds to the Refreshable box component

- Refactors cache methods in GiftWraps

- Migrates Media3 Videos to the DefaultMediaSourceFactory

Download:

- [Play Edition](https://github.com/vitorpamplona/amethyst/releases/download/v0.86.0/amethyst-googleplay-universal-v0.86.0.apk )

- [FOSS Edition - No translations](https://github.com/vitorpamplona/amethyst/releases/download/v0.86.0/amethyst-fdroid-universal-v0.86.0.apk )

The home feed without duplicates is so so much better now!

Whenever you remix, you take away the opportunity for someone else to take this remix slot.

Sure, one coin can make 100 remixes, but then other coins are stuck at 1 remix.

The average 1 bitcoin volume can only remix 2.4 times.

(this is an old chart from dumplings, it's before Wasabi 2.0, which had a remix ratio of between 10-50 per month)

https://camo.githubusercontent.com/64f7edc09a423b271e7662a047e4a3c3eec74bdfd1605803e9e483e39716af6a/68747470733a2f2f692e696d6775722e636f6d2f384d6c547957722e706e67

https://github.com/nopara73/dumplings?tab=readme-ov-file#freshbitcoins

Looks like a naughty assortment of pixels though.

Replying to Avatar arkinox

## Timechain Hyperspace

The issue with cyberspace being so exceedingly huge is that avatars could spawn in and fly around their entire lives without ever encountering another person. This is quite discouraging, and although it does accurately reflect the vastness of our own universe, it does not make for an engaging or useful digital space.

Therefore, I devised a way to make use of bitcoin's proof-of-work in cyberspace.

One of the core tenets of cyberspace is that everything must have a thermodynamic cost. Bitcoin is backed by the most significant output of thermodynamic energy of any computer system. This thermodynamic expenditure has the effect of securing the bitcoin network, which is effectively a payment to the universe for the benefit of bitcoin's users.

My idea is this: the hash of each bitcoin block can be interpreted as a cyberspace coordinate. Each block can be thought of as a hyperspace railway. Since the block hash is random and cannot be known it advance, it is unknown where this railway through cyberspace will eventually travel. But it will travel randomly and fairly across cyberspace, adding a new stop every 10 minutes, and avatars can use it to instantly jump from one block to the next block for a minor POW expenditure of their own, like buying a ticket to ride an already constructed subway train. In this way, the POW expended for bitcoin's sake directly benefits cyberspace users by providing POW-back transportation infrastructure around cyberspace. This is also good because it gives users a highway to build around and a focus to travel around. Without this unifying golden highway through cyberspace, everything would be lost in a near-endless void.

While the primary purpose of cyberspace is to create physical constraints on digital space, the massive thermodynamic expenditure of bitcoin creates a totally fair and unpredictable, immutable pathway through the cyberspace coordinate system. I therefore believe that while traveling across the timechain does provide significant relief from the constraints cyberspace was invented to enforce, it also creates a dynamic and accessible way for users of cyberspace to travel vast distances that might otherwise be barriers between them and the meaningful connections I hope cyberspace can create.

#bitcoin #cyberspace #pow #timechain #hyperspace

Excerpt from:

nostr:naddr1qq2nzcjpf9e9546fvdmyuw2lf9fhgej60yu4qq3qarkn0xxxll4llgy9qxkrncn3vc4l69s0dz8ef3zadykcwe7ax3dqxpqqqp65wfu67e8

That's really cool.

Cities might be established at meaningful block coordinates.

But usually roads are a network graph, and not just a straight line... If there were a more interconnected highway, it would allow for faster travel among any two destinations.

Yeah, this is the downside of newcomers paying for the mining fees of remixers.

If there are no newcomers, then it is not possible to coinjoin at all with whirlpool.

This also means that on average a user can only remix 2.4 times.

Wasabi never had this problem, you pay for your own blockspace, and so you can do it whenever you want to. On average the remix ratio is 20ish with WabiSabi.

Nuts, cookies and roots.

Smells dangerous.

John Light wrote a fascinating analysis of validity rollups and how they can be applied to bitcoin.

https://bitcoinrollups.org/

Zero knowledge cryptography has made substantial advancements recently. So much crazy stuff is now possible.

Keep building.

It's funny cause it's true.

The amount of capital transfer is related to the face value of the money unit minus cost of production of the money unit.

It actually is making a loss for the central bank to issue 0.01$ coins, because it costs 0.05$ to create.

But a 100$ bill only costs 0.01$ to create, and thus the seignoarage is extremely profitable.

nostr:nevent1qqsxnrlgsz9fnm0r8tfel2kttrefwe6yxmd52zgl2mpdpg47k5s9agcpz3mhxue69uhhyetvv9ujumn0wd68ytnzvupzp99xwj5qxl33fa4s7phnaraw3w7609rcg8cs8n0wge28w26ufrvgqvzqqqqqqyxzhavt

ecash is the best nft

Replying to Avatar Vitor Pamplona

#Amethyst v0.86.0: Draft Support

This version adds support for draft notes autosaved on your relays, a new simplified UI choice on Settings, changes the Discover tab algorithm to show the latest of chats and communities and much more.

Features:

- Draft notes for feeds, replies, live streams, public chats, NIP-04 DMs, GiftWrap DMs, polls and classifieds by nostr:npub1w4uswmv6lu9yel005l3qgheysmr7tk9uvwluddznju3nuxalevvs2d0jr5

- Adds autosave for Drafts by nostr:npub1w4uswmv6lu9yel005l3qgheysmr7tk9uvwluddznju3nuxalevvs2d0jr5

- Adds edit draft in the dropdown menu and the long press popup by nostr:npub1w4uswmv6lu9yel005l3qgheysmr7tk9uvwluddznju3nuxalevvs2d0jr5

- Adds a Draft feed screen for all posts

- Adds new algorithm to parse OpenGraph tags by nostr:npub168ghgug469n4r2tuyw05dmqhqv5jcwm7nxytn67afmz8qkc4a4zqsu2dlc

- Adds a Simplified UI setting to both feeds and chats

- Moves the username play button to the profile page.

- Adds link to the version notes when clicking in the version in the drawer

- Brings new git Issues and Patches to the Notification

- Filters out too many reposts of the same note when on the main feed

- Updates the bootstrap relay list

- Adds missing classes to support WebServer connections in the Video Playback

- Slightly reduces line height for improved readability

- Reduces the space between chat bubbles.

- Migrates shareable links from habla.news to njump.me

- Restructures the Discover Tab to show the Chats and Communities with the most recent new content.

- Adds a bot field to the user info

- Adds k-tag to the Deletion events

- Adds button to load Zap Splits from the cited users in the text

- Several accessibility improvements by nostr:npub1e2yuky03caw4ke3zy68lg0fz3r4gkt94hx4fjmlelacyljgyk79svn3eef

Bug Fixes:

- Fixes the post cut-off when the post has massive string chars without spaces or new lines

- Fixes missing Fhir Classes on Release

- Don't show the button to edit the post if the author of the original post is not the logged in user

- Fixes crash parsing multiple results from Amber by nostr:npub1w4uswmv6lu9yel005l3qgheysmr7tk9uvwluddznju3nuxalevvs2d0jr5

- Fixes the load of edits on a new edit proposal

- Fixes forking information kept from a previous post

- Fixes search on binary content

- Fixes space after clickable user display

- Centers Blank Note when post was hidden by the user.

- Accepts JSON events with escaping errors

- Fixes the parsing of user metadata events several times due to large coroutine backlog

- Fixes Scheduled Tag in LiveStreams

- Fixes the isOnlineCheck for nostr nests.

- Fixes sorting contract issues when follow status and user names are the same between keys

- Fixes tickmarks on dropdowns

- Checks if a Classified is wellformed before rendering

- Fixes size and alignment of the text when the live stream video is not present.

- Fixes some imports for benchmarks

- Fixes infinite Quotation issue (3 quotes are allowed).

- Fixes crashing with too many videos in quoted posts.

- Fixes double Show More when the user has hidden a post and ALSO the user's followers have reported the post.

- Only shows OTS to the respective Edit

- Fixes a bug with the latest version of jackson

- Avoids showing machine-code errors when paying for zaps on external wallets

- Fixes too strict timing constraints for new posts (accepts up to a minute in the future)

- Fixes following of geotags

- Fixes lack of zap amount refresh after zapping a note.

- Fixes videos not being able to seekTo the zero position.

- Fixes layout issues of Blog Post summaries when images are not present.

- Doesn't show edits of blog posts in the User's Profile

- Fixes Amber's deep sleep: Adds a lifeCycleOwner listener to register external signers on resume

- Fixes missing context in some replies to blog posts.

- Adds a space after the Channel header in the reply rows

- Centralizes the counter after the list of participants in a live event.

- Fixes double mention to Community headers when seeing a reply to a community post.

- Fixes Chat preview images when no image has been set.

- Fixes the display or Zap Events when All Follows is selected in Notifications

- Fixes the reply event finder for the reply row of text notes

- Makes hidden cards full width on the discovery feed

- Fixes the width of muted messages on chat feeds.

- Fixes the feed updates after list selections on the Discovery pages.

- Realigns the reaction icons and texts between main feed and video feed.

- Fixes garbled URL preview for non-UTF-8 HTML by nostr:npub168ghgug469n4r2tuyw05dmqhqv5jcwm7nxytn67afmz8qkc4a4zqsu2dlc

- Adjusts icon sizes on the galleries

- Avoids publishing with two equal `t` hashtags when the user already writes them in lowercase

- Limits the size of image previews from opengraph from being too big

- Fixes NPE with the cached state.

- Increases the push notification max delay to 15 minutes

- Fixes controller comparison for keep playing

- Fixes tag markers for replies in DMs

- Fixes layout of the reply row in chats

- Fixes lack of blurhash preview in some videos

- Fixes the lack of following mark on user pictures in chats

- Fixes the UI spacing for channels

- Fixes the use of filters that didn't discriminate the relay type setup

- Holds the state of Show More when switching edits and translations

- Renders DMs and live chats in the feed if they show up there

- Fixes contract violation when sorting users

Updated translations:

- Spanish by nostr:npub1luhyzgce7qtcs6r6v00ryjxza8av8u4dzh3avg0zks38tjktnmxspxq903

- French by nostr:npub106efcyntxc5qwl3w8krrhyt626m59ya2nk9f40px5s968u5xdwhsjsr8fz

- Dutch by nostr:npub1w4la29u3zv09r6crx5u8yxax0ffxgekzdm2egzjkjckef7xc83fs0ftxcd

- Swahili by nostr:npub1q6ps7m94jfdastx2tx76sj8sq4nxdhlsgmzns2tr4xt6ydx6grzspm0kxr

- Chinese by nostr:npub1raspu6ag9kfcw9jz0rz4z693qwmqe5sx6jdhhuvkwz5zy8rygztqnwfhd7

- Bengali by nostr:npub13qtw3yu0uc9r4yj5x0rhgy8nj5q0uyeq0pavkgt9ly69uuzxgkfqwvx23t

- Hungarian by nostr:npub1ww8kjxz2akn82qptdpl7glywnchhkx3x04hez3d3rye397turrhssenvtp

- Czech, German, Swedish and Portuguese by nostr:npub1e2yuky03caw4ke3zy68lg0fz3r4gkt94hx4fjmlelacyljgyk79svn3eef

- Arabic by nostr:npub13qtw3yu0uc9r4yj5x0rhgy8nj5q0uyeq0pavkgt9ly69uuzxgkfqwvx23t

- Thai by nostr:npub1tr66yvqghfdgwv9yxhmg7xx6pvgvu5uvdc42tgdhsys8vvzdt8msev06fl and nostr:npub1vm0kq43djwdd4psjgdjgn9z6fm836c35dv7eg7x74z3n3ueq83jqhkxp8e

Performance Improvements:

- Switches Robohash to Precompiled SVGs in order to reduce the memory burned of creating Strings with SVGs on the fly

- Restructures Data Access filters and LocalCache to use a ConcurrentSkipList instead of ConcurrentHashMap

- Only download video, image and audio files in NIP-94

- Updated hashtag icons for performance

- Avoids checks if a filter has changed before generating JSon strings

- Cleans up User Metadata upon receipt instead of in every rendering

- Simpler/Faster UserDisplay renderings

- Reduces video cache from 10 to 4 videos

- Removes coroutine use for Hashtags

- Brings the ZapForwarding icon to Compose

- Simplifies the algorithm to check if chatroom sender intersects with the follow list

- Avoids serializing temporary fields on Quartz

- Refactors views to the video and chat feeds

- Restructures NoteCompose for performance

- Restructures markAsRead to minimize threading cost

- Adds a large benchmark test for duplicate events

- Optimizing the performance of Highlight rendering

- After memory cleanup, only trigger liveData when it actually changes

- Minimizes memory use to calculate zaps

- Avoids triggering an error when decoding invalid hexes

- Reduces the amount of co-routines being launched in each LiveData update

- Migrates channel list and channel notes to LargeCache

- Removes the use of data classes to speed up comparisons

- Improves Nostr filter to bring public chat messages and avoid public chat creation and metadata updates

- Removes jsoup from dependencies

- Removes the need to observe author changes to event after loaded

- Turns hashtag icons into programmable vectors

- Moves the Following Vector to a native composable

- Removes unnecessary modifier layouts from the top bar

- Uses the cached thread pool instead of the scheduled thread pool for translation services

- Avoids launching coroutines that were just launched

- Makes a cache for Media Items

- Only changes the keep playing status if different

- Reduces recompositions after video/image hash verification

- Avoiding feed jitter when pressing the notification button twice

Code Quality Improvements:

- Breaks massive NoteCompose down into each event type

- Removes the release drafter plugin on actions. Too buggy

- Removes dependency of the Robohash from CryptoUtils

- Improves Preview helper classes

- Updates secp256k1KmpJniAndroid, compose, zoomable, media3, jackson and firebase libs

- Updates AGP to 8.3.1

- Deletes the old Settings local db

- Refactors some of the old display name structure

- Refactors Relay classes.

- Isolates the LargeCache forEach method to allow quick time measurements on filters

- Reorganizes classes in the commons lib

- Fixes test cases for nip96 uploaders

- Removes unused addMargin param

- Refactoring caching systems for the Compose layer

- Aligns the BOM between implementation and tests

- Refactors the use of dividers out of components

- Refactors composables to load events, check hidden and check report

- Fix Kotlin encryptDecryptTest to decrypt with swapped private and public keys to follow NIP-44 documentation by nostr:npub1yaul8k059377u9lsu67de7y637w4jtgeuwcmh5n7788l6xnlnrgs3tvjmf

- Finishes the migration of People List updates from LiveData to Flow

- Migrates all Refreshable feeds to the Refreshable box component

- Refactors cache methods in GiftWraps

- Migrates Media3 Videos to the DefaultMediaSourceFactory

Download:

- [Play Edition](https://github.com/vitorpamplona/amethyst/releases/download/v0.86.0/amethyst-googleplay-universal-v0.86.0.apk )

- [FOSS Edition - No translations](https://github.com/vitorpamplona/amethyst/releases/download/v0.86.0/amethyst-fdroid-universal-v0.86.0.apk )

Drafts appear in the UI even if the note is written and directly posted.

If you feel hungry but want to keep going, drink a cup of bone broth.

Fascinating!

I wonder what he meant by

> before backing the currency with fiat money can begin.

# A Declaration of Separation

## To The Governments & People of Earth:

We claim the right to exist, and we will defend it. We do not seek to overthrow anything. We do not seek to control anything. We/merely wish to be left alone.

All we ever wanted was to live in peace with our friends and neighbors. For a long, long time we bore insults to our liberty; we took blows, we did what we could to avoid injury and we worked through the system to get the offenses to stop. That has now changed.

We no longer see any benefit in working through the world?s systems. At some point, working within a system becomes cowardly and immoral; for us, that point has arrived.

Regardless of the parties in power, their governments have continued to restrict, restrain and punish us. We hereby reject them all. We hereby withdraw from them all. We hold the ruling states of this world and all that appertains to them to be self-serving and opposed to humanity. We now withdraw our obedience and reclaim the right to strike back when struck. We will not initiate force, but we do reserve the right to answer it. We did not choose this ? it was forced upon us.

## To The Governments of Earth:

You are building cages for all that is human. In the name of protection, you have intruded into all areas of human life, far exceeding the reach of any Caesar. You claim ultimate control of our property and our decisions, of our travels and even our identities. You claim ownership of humanity far beyond the dreams of any Emperor of any previous era.

Understand clearly: We reject your authority and we reject your legitimacy. We do not believe that you have any right to do the things you do. You have massive power, but no right to impose it upon us and no legitimacy. We have forsaken you. We are no longer your citizens or your subjects. Your systems are inherently anti-human, even if all their operators are not. We are not merely angry young people. We are fathers and mothers; aunts, uncles and grandparents; we are business owners and trusted employees; we are mechanics and engineers and farmers. We are nurses and accountants and students and executives.

We are on every continent.

This is not a burst of outrage; this is a sober declaration that we no longer accept unearned suffering as our role in life.

For long decades we sat quietly, hoping that things would turn around. We took no actions; we suffered along with everyone else. But after having our limits pushed back again and again, we have given up on your systems. If our fellow inhabitants of this planet wish to accept your rule, they are free to do so.

We will not try to stop them. We, however, will no longer accept your constraints upon us.

From now on, when you hurt us, we will bite back. If you leave us alone we will leave you alone and you can continue to rule your subjects. We are happy to live quietly. But if you come after us, there will be consequences. You caused this because of your fetish for control and power. The chief men and women among you are pathologically driven to control everyone and everything that moves upon this planet. You have made yourselves the judge of every human activity. No god-king of the ancient world ever had the power that your systems do.

You have created a world where only the neutered are safe and where only outlaws are free.

## To The People of Earth:

We seek nothing from you. We do not want to rule you and we do not want to control you.

All we wish is to live on earth in peace. As always, we will be helpful neighbors and generous acquaintances. We will remain honest business partners and trustworthy employees. We will continue to be loving parents and respectful children.

We will not, however, be sacrificial animals. We reject the idea that others have a right to our lives and our property. We will not demand anything from you, and we will no longer acquiesce to any demands upon us. We have left that game. We reject all obligations to any person or organization beyond honesty, fair dealing and a respect for human life.

We will shortly explain what we believe, but we are not demanding that you agree with us. All we ask is that you do not try to stop us. Continue to play the game if you wish; we will not try to disrupt it. We have merely walked away from it.

We wish you peace.

## To Those Who Will Condemn Us:

We will ignore you.

We welcome and seek the verdict of a just God, before whom we are willing to expose our innermost thoughts. Are you similarly willing? We would stand openly before all mankind if it were not suicidal. Perhaps some day we will have to accept slaughter for our crime of independence, but not yet.

Your criticism and your malice are much deeper than mere disagreements of strategy or philosophy. You do not oppose our philosophy, you oppose our existence. Our presence in the world means that your precious ideals are false. Some of you would rather kill us than face the loss of your ideologies, just as those like you have either hated or killed every sufficiently independent human.

You present yourselves to the world as compassionate, tolerant and enlightened, but we know that your smooth words are costumes. Oh yes, we know you, servant of the state; don't forget, we were raised with you. We played with you in the schoolyard, we sat next to you in the classroom. Some of us studied at the same elite universities. We watched as you had your first tastes of power. We were the boys and girls standing next to you. Some of us were your first victims. We are not fooled by your carefully crafted public image.

## What We Believe

1: Many humans resent the responsibilities that are implied by consciousness. We accept those responsibilities and we embrace consciousness. Rather than letting things happen to us (avoiding consciousness), we accept consciousness and choose to act in our own interest. We do not seek the refuge of blaming others, neither do we take refuge in crowds. We are willing to act on our personal judgment, and we are willing to accept the consequences thereof.

2: We believe in negative rights for all: That all humans should be free to do whatever they wish, as long as they do not intrude upon others; that no man has a right to the life, liberty or property of another; that we oppose aggression, fraud and coercion.

3: We do not believe that our way of life, or any other, will make life perfect or trouble-free. We expect crime and disagreements and ugliness, and we are prepared to deal with them. We do not seek a strongman to step in and solve problems for us. We agree to see to them ourselves.

4: We believe in free and unhindered commerce. So long as exchanges are voluntary and honest, no other party has a right to intervene before, during or after.

5: We believe that all individuals should keep their agreements.

6: We believe that honestly obtained property is fully legitimate and absolute.

7: We believe that some humans are evil and that they must be faced and dealt with. We accept the fact that this is a difficult area of life.

8: We believe that humans can self-organize effectively. We expect them to cooperate. We reject impositions of hierarchy and organization.

9: We believe that all humans are to be held as equals in all matters regarding justice.

10: We believe that the more a man or woman cares about right and wrong, the more of a threat he or she is perceived to be by governments.

11: We believe that there are only two true classes of human beings: Those who wish to exercise power upon others either directly or through intermediaries and those who have no such desires.

12: Large organizations and centralization are inherently anti-human. They must rely upon rules rather than principles, treating humans within the organization as obedient tools.

## Our Plans:

(We are building our own society. We will supplement traditional tools with networking, cryptography, sound money, digital currency and anonymous messaging. Our society will not be centrally controlled. It will rely solely

on voluntary arrangements.

We welcome others to join us. We are looking for people who are independent creators of value, people who act more than talk, and people who do the right thing because it is the right thing.

We will develop our own methods of dealing with injustice, built on the principles of negative rights, restitution, integrity and equal justice. We do not forbid anyone from having one foot in each realm - ours and the old realm - although we demand that they do no damage to our realm. We are fully opposed to any use of our realm to facilitate crime in the old realm, such as the hiding of criminal proceeds.

We expect to be loudly condemned, libeled and slandered by the authorities of the old regime. We expect them to defend their power and their image of legitimacy with all means available to them. We expect that many gullible and servile people will believe these lies, at least at first. We will consider traps laid for us to be criminal offenses. Any who wish to join us are encouraged to distribute this declaration, to act in furtherance of our new society, to voluntarily excel in virtues and to communicate and cooperate with other members of the new society.

Free, unashamed men cannot be ruled.

# We are The Free and The Unashamed.

The best tldr on arkpill.me I can muster so far:

tldr of the tldr: trustless offchain wabisabi coinjoins, cheap in block space, expensive in capital cost.

Clients "peg in" by sending to a 2-of-2 multisig address with the Ark service provider ASP, this is the creation of a vtxo onchain. After X weeks, the ownership and control of this vtxo transfers to the ASP.

At any time, clients can unilaterally without the help of the ASP peg out, which requires 4 onchain transaction and the expiry of a timelock.

With collaboration of the ASP, that onchain vtxo can then be spent off chain by cosigning with the ASP. In this off chain coinjoin transaction the user receive newly created off chain vtxos. The ASP is a Wabisabi coordinator where users can anonymously register inputs, outputs and signatures.

The onchain footprint of this pool transaction is fixed regardless of the number of users, one or more inputs from the ASP, as well as a shared output that commits to all vtxo outputs of the offchain vtxo coinjoin transaction. So, thousands of offchain vtxos are represented by a single onchain output.

A offchain vtxo can only be spend once, must be spend before the 4 week timelock, and a payment is only finalized, when the pool transaction is confirmed in the blockchain. The offchain vtxo transaction graph should be considered public knoedge, therefore the inputs and outputs must be carefully chosen to ensure privacy.

The ASP also runs a lightning service provider, it accepts (zero conf) vtxos as the first hop of an atomic lightning route to pay any external lightning invoice. The ASP also accepts vtxos for the creation of onchain outputs in the pool transaction (submarine swap). The ASP further accepts onchain or lightning payments in exchange for vtxos. Therefor peg-in and peg-out transactions may be less common, and end-users mainly do swaps.

The big downside, the input side of the pool transaction has to come from the ASP, he can take that from funding / pool utxos that are expired (4 weeks). The value of the pool output is the sum value of all the offchain vtxos in that round. So, if 1000 users each have 5 bitcoin in that round, the ASP needs 5000 btc. The ASP has to bring external liquidity to cover the onchain funding until the users peg-in or the pool transaction timelock expires, at which point those onchain utxos can be used to fund the input of the next pool transaction.

There is a much lower mining cost of the ceremony, but a much larger capital / liquidity cost that the ASP has to cover. The ASP requires a fee structure that includes remixes, and the fee is a percentage of the value of the vtxo.

Final words, Ark is crazy cool tech, shows what's possible with covenants, removes a shit load of blockspace cost, but adds a huge capital cost.

Zaps still blow my mind every time...

The note got through, seems to work.