{
  "short_name": "LOW",
  "name": "LOW \u2014 heads-up lowball poker",
  "start_url": "/",
  "display": "standalone",
  "theme_color": "#06120c",
  "background_color": "#06120c",
  "icons": [
    {
      "src": "/icon-192.png",
      "sizes": "192x192",
      "type": "image/png",
      "purpose": "any"
    },
    {
      "src": "/icon-512.png",
      "sizes": "512x512",
      "type": "image/png",
      "purpose": "any"
    },
    {
      "src": "/icon-512-maskable.png",
      "sizes": "512x512",
      "type": "image/png",
      "purpose": "maskable"
    }
  ],
  "metanet": {
    "groupPermissions": {
      "description": "Approve LOW once to host and join tables, exchange hand messages, and receive pot payouts and refunds. You will still be asked to approve every payment of satoshis.",
      "protocolPermissions": [
        {
          "protocolID": [
            1,
            "identity key retrieval"
          ],
          "counterparty": "self",
          "description": "Identify your seat to the lobby, the game relay, and the watchtower."
        },
        {
          "protocolID": [
            1,
            "messagebox"
          ],
          "counterparty": "self",
          "description": "Integrity-tag and encrypt the game messages exchanged through the LOW relay."
        },
        {
          "protocolID": [
            1,
            "low potparty"
          ],
          "counterparty": "self",
          "description": "Index your funded games so any of your devices can find and recover them."
        },
        {
          "protocolID": [
            1,
            "low potrefund"
          ],
          "counterparty": "self",
          "description": "Publish a backup of your pre-signed refund so it can be recovered even if the watchtower fails."
        },
        {
          "protocolID": [
            1,
            "low result"
          ],
          "counterparty": "self",
          "description": "Sign and countersign finished-game results for the public leaderboard."
        },
        {
          "protocolID": [
            1,
            "low collected"
          ],
          "counterparty": "self",
          "description": "Mark a game's payout as collected so your other devices stop offering it."
        },
        {
          "protocolID": [
            1,
            "low proof"
          ],
          "counterparty": "self",
          "description": "Sign the fairness proof that backs your leaderboard wins."
        },
        {
          "protocolID": [
            2,
            "auth message signature"
          ],
          "counterparty": "02cc94c6d06423911ff58076c1b9197f21463c88d84b300b913ac7e2e4e343f24c",
          "description": "Authenticate your session to the LOW relay (BRC-103)."
        },
        {
          "protocolID": [
            2,
            "auth message signature"
          ],
          "counterparty": "039dad72fa7362de30d417419a590b13acc065bb8348bddc76361743fbad450d59",
          "description": "Authenticate your session to the LOW watchtower (BRC-103)."
        },
        {
          "protocolID": [
            2,
            "auth message signature"
          ],
          "counterparty": "022f85b04feb86bc1e8910a0a9155cefc9759e99c65435c377d17f3307e4b470ee",
          "description": "Authenticate your game-history reads to the LOW app-layer (BRC-103)."
        },
        {
          "protocolID": [
            2,
            "server hmac"
          ],
          "counterparty": "self",
          "description": "Keep authenticated relay and watchtower requests replay-safe."
        },
        {
          "protocolID": [
            2,
            "low hand secret"
          ],
          "counterparty": "self",
          "description": "Recreate your in-hand secrets (discard choice, shuffle entropy) after a reload so an interrupted game can finish honestly."
        },
        {
          "protocolID": [
            2,
            "low settle"
          ],
          "description": "Sign your pot settlements (both of you sign the hand's outcome; the pot can only pay a mandated template). An opponent on an older LOW may ask this once more, for that opponent only."
        },
        {
          "protocolID": [
            2,
            "low escrow settle"
          ],
          "description": "Sign your side of a legacy escrow settlement with the opponent you are playing."
        },
        {
          "protocolID": [
            2,
            "3241645161d8"
          ],
          "counterparty": "self",
          "description": "Derive the private addresses that receive your pot payouts and refunds (BRC-29 self-payment)."
        },
        {
          "protocolID": [
            2,
            "low poker lobby"
          ],
          "counterparty": "anyone",
          "description": "Sign the table listing you publish to the public lobby."
        },
        {
          "protocolID": [
            2,
            "low lobby close"
          ],
          "counterparty": "self",
          "description": "Reclaim the small listing deposit when you close your table."
        }
      ],
      "basketAccess": [
        {
          "basket": "low-lobby-change",
          "description": "Track the change reclaimed from closed table listings."
        }
      ],
      "certificateAccess": []
    }
  },
  "babbage": {
    "groupPermissions": {
      "description": "Approve LOW once to host and join tables, exchange hand messages, and receive pot payouts and refunds. You will still be asked to approve every payment of satoshis.",
      "protocolPermissions": [
        {
          "protocolID": [
            1,
            "identity key retrieval"
          ],
          "counterparty": "self",
          "description": "Identify your seat to the lobby, the game relay, and the watchtower."
        },
        {
          "protocolID": [
            1,
            "messagebox"
          ],
          "counterparty": "self",
          "description": "Integrity-tag and encrypt the game messages exchanged through the LOW relay."
        },
        {
          "protocolID": [
            1,
            "low potparty"
          ],
          "counterparty": "self",
          "description": "Index your funded games so any of your devices can find and recover them."
        },
        {
          "protocolID": [
            1,
            "low potrefund"
          ],
          "counterparty": "self",
          "description": "Publish a backup of your pre-signed refund so it can be recovered even if the watchtower fails."
        },
        {
          "protocolID": [
            1,
            "low result"
          ],
          "counterparty": "self",
          "description": "Sign and countersign finished-game results for the public leaderboard."
        },
        {
          "protocolID": [
            1,
            "low collected"
          ],
          "counterparty": "self",
          "description": "Mark a game's payout as collected so your other devices stop offering it."
        },
        {
          "protocolID": [
            1,
            "low proof"
          ],
          "counterparty": "self",
          "description": "Sign the fairness proof that backs your leaderboard wins."
        },
        {
          "protocolID": [
            2,
            "auth message signature"
          ],
          "counterparty": "02cc94c6d06423911ff58076c1b9197f21463c88d84b300b913ac7e2e4e343f24c",
          "description": "Authenticate your session to the LOW relay (BRC-103)."
        },
        {
          "protocolID": [
            2,
            "auth message signature"
          ],
          "counterparty": "039dad72fa7362de30d417419a590b13acc065bb8348bddc76361743fbad450d59",
          "description": "Authenticate your session to the LOW watchtower (BRC-103)."
        },
        {
          "protocolID": [
            2,
            "auth message signature"
          ],
          "counterparty": "022f85b04feb86bc1e8910a0a9155cefc9759e99c65435c377d17f3307e4b470ee",
          "description": "Authenticate your game-history reads to the LOW app-layer (BRC-103)."
        },
        {
          "protocolID": [
            2,
            "server hmac"
          ],
          "counterparty": "self",
          "description": "Keep authenticated relay and watchtower requests replay-safe."
        },
        {
          "protocolID": [
            2,
            "low hand secret"
          ],
          "counterparty": "self",
          "description": "Recreate your in-hand secrets (discard choice, shuffle entropy) after a reload so an interrupted game can finish honestly."
        },
        {
          "protocolID": [
            2,
            "low settle"
          ],
          "description": "Sign your pot settlements (both of you sign the hand's outcome; the pot can only pay a mandated template). An opponent on an older LOW may ask this once more, for that opponent only."
        },
        {
          "protocolID": [
            2,
            "low escrow settle"
          ],
          "description": "Sign your side of a legacy escrow settlement with the opponent you are playing."
        },
        {
          "protocolID": [
            2,
            "3241645161d8"
          ],
          "counterparty": "self",
          "description": "Derive the private addresses that receive your pot payouts and refunds (BRC-29 self-payment)."
        },
        {
          "protocolID": [
            2,
            "low poker lobby"
          ],
          "counterparty": "anyone",
          "description": "Sign the table listing you publish to the public lobby."
        },
        {
          "protocolID": [
            2,
            "low lobby close"
          ],
          "counterparty": "self",
          "description": "Reclaim the small listing deposit when you close your table."
        }
      ],
      "basketAccess": [
        {
          "basket": "low-lobby-change",
          "description": "Track the change reclaimed from closed table listings."
        }
      ],
      "certificateAccess": []
    }
  }
}
