{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "zap-three-tone-down",
  "type": "registry:block",
  "title": "Zap Three Tone Down",
  "author": "Kenney <https://kenney.nl>",
  "description": "A distinctive three-tone descending zap sound, excellent for indicating a power-down, error, failed action, or a 'wrong answer' in a UI or game.",
  "files": [
    {
      "path": "registry/soundcn/sounds/zap-three-tone-down/zap-three-tone-down.ts",
      "content": "import type { SoundAsset } from \"@/lib/sound-types\";\n\nexport const zapThreeToneDownSound: SoundAsset = {\n  name: \"zap-three-tone-down\",\n  dataUri: \"data:audio/mpeg;base64,SUQzBAAAAAAAIlRTU0UAAAAOAAADTGF2ZjYyLjMuMTAwAAAAAAAAAAAAAAD/+1DAAAAAAAAAAAAAAAAAAAAAAABJbmZvAAAADwAAADQAACtCAAkODhMTGBgcHCEhJiYrKzAwNTU5OT4+Q0hITU1SUlZWW1tgYGVlampvb3NzeHh9fYKHh4yMkJCVlZqan5+kpKmpra2ysre3vLzBxsbKys/P1NTZ2d7e4+Pn5+zs8fH29vv7/wAAAABMYXZjNjIuMTEAAAAAAAAAAAAAAAAkAkAAAAAAAAArQnVFJIEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//tQxAADCVA66gw8wojlgp4I96QAAR1ftwTEEMIQdCgVijAYDJkyZMmTIECBAgQIIQnYeHh4YAAAAAB4eHh4YAAAAAB4eHh4YAAAAAB4eHh4YAAAAIDw8PD0gj/9//+hT2gKoAHAOQ4hNtLImQVBUFQVBoGgaBoKlQVOywNA0x9DdOut2pOtDeOT/0Rv/7f+hvudWBChkEw4AFAC7zjdPYVKGHkcrtcp6kMP5e/0x8hVRW/QP5vf/LOX3xN8GhocY8ljvHzUAgLJQEcHY6FjxP/7UsQbglDViPKsLi3JWzFhpYGouc/9BZDyDtkMIh/rIu/8hiP5YGYQmAucryMFkHpQLQsg1jLkoVMhgpd/+dIn3ygj9RPnGyL3/qIwMUDFIggtR0dBTJkAwB0o0wE0DrD3hYBLAYAhLGpZOpFL04HABjL4Q+kL+RJ9Gep/M16UZ8joaRnHDAgb/0MMTo3/If8oX/l+a+R6GnKVIkbKOlf6F9uhf8gHnKl+r+g9FT8LQhCIQYhAwLD4W0iVlskgsotraRISATMTYEIEwM0GdRhQ//tSxAqADOmHQaak9rltsGd1NBZyb0EEEO8wQb+m3UL3F2MgghBiG51EBIoQMttAAD5s+hnTv/SZn6IYYiNop7557mGNoOK52e6FhQOG9FG9nKuqTOjNov6f+n6fnkxoCwHgkDQg+ZqJttqSNyNAgLdEbIiC4YxHCuYGZiaqRa1anv9lWIp66Gs1Tn36V8W1cU+PKC4PobS3C83JbePvL2iZH8SSdRTw0hFO5H1MR189OqzEf/Sm3////2//rMUHEEyCSbkkklbLSRAEtR8WY93/+1LEBwAL7YU3rCSn2VswpjaecAGMvsgmDpcIyWkgV1Nzd6xlyi8rrwYaRvPKrzpsjIppBgn+jCJmmo6DEYhhQptz8q15lOtGd/akylU/l5SCwRIZW8jZf3+uv/1f/9PWguGEFV+BWTTa26hxEAf7hsW4kjdaLSrM6p/JG5g8cpytLDg+ahpk2xzVY0fGjTjjip9v57oSP+l028xubsX6ok93XOvXRET/d0MOq32/p9f/N/87/T7FRcCYpRDV6HZ8Fg+Fg0GgEQhEIgVDgjRb1P/7UsQJgAzM23W49oARcBOu956ABKDc1Qdbx8mIERSkvTUBBZeCeExbm5gAYgW8JZZQSZsoEYvutanZbpy4YjzMDSip9Bd6ZoXEE3Qqar+xfL6dbu1Jkf/LjgQAaOz8H0Qwkhd/+XD9FAuSjZZZbSWO5HvR6gdNUNRpOhzNpxJGL4LEvh4EwAcTLiAIroe+NDo3QG3y3uIdDlH/i4m6/rMr60Y1DOZ8XEglHAmfLzSnF32NLt11VuxpDWZpu53i+4PcKu1q1QzHOUh9E5a7zFH0//tSxAYAC9jtfeesdGF3Fay5p504uy8Co2e6BURPnxljW3qNEOd9HK6tO/cnzCIzA6NXRPABX5LX6JJCln9Dsd/ZBkLK4As++wqrWYzQj7qpcb6fdeqfNYfh3d2Xd3STD+o9whnm8FXAJcAcAABJKiSCO2ICgmFvpqtYjLeygyxbqYU4sDghidDIz+2JClBfX1i+ocIb1s2itn5sERs76CIMq/cRgwW47FBP6mmfmEeR7mYAPOiU9i5jWGOPfIhyuCvfyPF6wO6VbtVS2W0u0Ev/+1LEBYALtSV/h6RUcXQnbX2HnTgZNbE5XkSIW9Uqhi/eg/xaxwqn/FR1oGKT1Dck5eZQmQuUBDY/7AwB8EBCxb9SAHoQDJ5ynL0Jp6/++d/eD9IB+7dpCu1amRGBOP1jywNSH3dvVADNJiAtVJWEyzaWkTOn1n2Fdrsf9ZIfb0G6WBW/kFCzl38rxhgjQSEnROEgUZ4hIHdn2u+HcjP/4pGnnQR+oh88eH180RRd9H/T8r+z/v6T/29KN+3Vresp7rdnXXBplcU1myzxJ2JNF//7UsQGAAvpg4nsNE/xcBxsfae0+E9SJkfWg3FxGAqNveh0ACVUf6yAUvdADFAGQOQJWVmTAmyx+XRNxOfkUjfJ4k7fInx2j+Q+ocQYw1tnaE/F/gD/v+T6hv3f6N+35/z+1f//9P4JlAHkHABdBPEBJ2VbmQmhwr1pk9YbP851abaAbkI9wQgiWb7xluDrPNIl6kmuGCzv99BgxmvoGKPrNA4mp7DSevyRKSHTNDi0/T/NPqJ363/LOdynNd36PxHz2vtVpWj4t0kkZKkI7bDE//tSxAYAC4VzhaestnGEHuz1pYpYS/yfkVkXDTBgIL+QSSKk57OCLLczl/JQsZyI9Fgz8zsB6G/7blf1DmRBIyq+Hrs+IC5+QKFZPTrQDt3IJt9f0L++3f9f7f/1/Z/o/6/iT8ygOyQEUAU03ZpZIUBCYt0q6iSsQJNgwK3Jxv9n8W04T84WdR6JuTOkseDNbkDoJJKvaQCBO/eWSz++GhBAjlOQukOPoQo/QosvUI/1Y/6l6Oj/moLxpRzbrJG7dt+GbtvNquJlrlUqsDpFIMP/+1LEBQAKdKl5jCSu8VShLn2GibzEUPeXGmU7TdVGxd+LWbC0Q4Biv5EIy4ZSmhBGOfyCX/h4A37Bb8webRD+YvQSOTSptDFFqltrTsyeT24f019NacV1ZbT8k6UdXIPo1TnCSm2hXTzTKcpm1O8/yi8yoy0J+ZFKUyQjPzolQt2qSDefWkFj1mAkEu5M+T21xr9IxP6GCjalUR2r8R6s//k+j+j+Df1HyflS2RyuLavoyz6QJgpiPQKcSKcn00B0aTqnuvVn3dAiM1+MQnrSG//7UsQOgApYkWftYUPBRZgsOageEDc//iKBhMlez+raQIG8Nn6ArfwIxzoLI7qosl25g3+W7d9Ts5uz+fw/hnDOcyWjX/lNeX1vqQCgGRDwYFgu2wwZhh+5f9iLMzJAi6muvtf6n4unDv3W7IIQnChx+IqUw+d+sOk9AQ9AGv0C3oFH8cJfLff1+jeg7z+zObt+zZt26Po16splNdVgaTd2SVkcrTcVpfj5PsQNqMkNWbBiDFSx98M4CeVusSYKZIGxDy4Kx8WW/UKWbyO+X28P//tSxBoACkz9hefArbFNMG19l6h4AnhT+NL5hT1f0P8W+b4n9/p8Ith7NZPb/p069b6dYAJgZodmlJmHdF24BaESOQ98srRgESqN/Bhgct6+G0OgIKrmtEE4BFvBY9QuX6BLbqKo38YkvkTeQlvn/M+/2+30/+vzX9f2//+33+n2+nzH8ryCUMw6d39bv9DLUApBpmsTclIqGVTCIENfZsMkCw43ps7A1IDAc6cLuaCb+BT88B4v4FpfwmDbwqn+pbzt6n+3q3y/f6/N/8I+3R//+1LEJQAKNP1356hTIU6Qb3ae8Abo26NOvLZTUw6bm/G3UASlOXMq2ZNXQ864aBNxQGghgagMmJm/hEWF2h8aIuBiRKa7eTzGviIXWPv40c1tf5V0T+jYqGn/GG+bbk/o05TVlcs6nV/r7t2f+zO76gJIpPpJPOSxTXsVKraFSmpwqmTHSqBJiJVDkwEqBEgUCD+pTM3BjBNBjLwfQ4CSBAj4McZIzCPJcfhEmYticSJFJYviLMRsJoiGFrIZInDqzha5bPKNKlmjo2rW9lpJl//7UsQwABL1UV7ZpoABTxAt97DQAtRmxk7JTJRdaazWbKJs1WZKLtEvS8kjSpGtGlRrW9r2dO66VqVF/66p1iY52dY4sfcaMopqWpVSCgkJqbdRLcglUpAdyGz2WAq5fF+3lnYaf5L5b+X1oCJBYjhHKOEwBZO9zoOo2SRY4GFaPDkP0R6G2yRHIPmGp1b6tT85v3//ZktGWyGQxbFcjo01YGsGQ00XP2I3pS3Yk6RgbW0/CCd4SgbzWe4KHiSretXWxIngIzXZE4BwRDdEFtbu//tSxBgACjzZZ+w0UwFNsC41h6maHT4O8lOgFuNPH1H1N6N4P6P9/l9Qnxue/+3bp0fRiL6HUUTHRLtuRFNx/VKkpSgC9bTuIZwAlEvepusMFEYr/2sdQEc4FW4N4m9v6ACn5UF9vAqm+HpbzPjNvRvVvv/9/r9///p9W9X9W+/o/3/+f8757eR6VWCZCWI6N2xGKWUuEOHk7iDrUnETnTsacuWHr0vFACJGxveoBFgBoWBpx/yQCuT8Fj5UAA3UHn8lf3+VL+pbyq+r/LfSe3f/+1LEIwAKWLVl7LVSQUmYK322iljbn9unbk9P0aNejKZUwaQYBBwKgAAastaGBUfAKJmzZlzkogJCiFMDfdTaUrub/b4LFSQp9wAbAqW6whvhe28Sc91F5L1+w/gxvBk8GnoJ+N3fZs3ZHZtw3s/2ZbTl9Sri8Wo5SZmNtq0A0lkrcpCXNJR4jzHFey7ctLhA9n+kMMRsSJsUTon9+dCzCPOifH6hOBX6hWhU8c+KDvX6/C4s8oT9D/T9fm/Kv492bP9n06dGjRRuOSOjaAg5rP/7UsQuAAps/W+sRO2RTqvr9aaJ6D3DggjcqcT0fTQbmRKWo029KzoVW+Y+iyCqnEUyYEUR8TN/B/NOoyV5JHvRvBfB/Bt4Ub0H//+n0+nwbev//1b0J6/VPURqP57TkZB3OGVZWaxQt12E5442Z5J6qzBR9pqppbumFCiYJ3v9jA1EjY99mUEmE1S8Rh+iCkr9Fusf28eO8KHeN+o70DPVPi/3+v1/byv6t6/RvI3of475fQv3+T4hybg2AqAVDdyYZNUZ2QXD9qakbYgqsVAU//tSxDiAC0WDf+w0svFpsew9lopga2nUuq6DCUNjvePEleoNDMeeNguT84BN0ukFWfxJ0+mOEptytvt4P8bwRfX6p9vm+31+j/+n7en4/p+/0+329QMnhWqgawgzCzmiLc1gJWcqWD2qkJeoACQWYlCaIzu5VSoAinW3/13GTDfyNxAqBcPdYmnojh+XH8XPgL+HG8G/29H9fxvQ/xPz/T6/P9Pq3gvqKyOnTr1ZRlXHy3T9uabSURQLsbCyVR/pwlakCeMeZ2XAD0K78xDwCZL/+1LEPAAK3Tlj7LRSwUcurzT2ia6SKiTBJ0uoG6e5eHsh1D+otvCfB/Cj/b7ev0L6ivivk/+jev3b1b0///f5PmfxOl1FUEcHJExNw4m5q0ElXaGX+rpwkYfAxkixZkGWBmb6YhnYENAKEWpC/vB9b/ngTewrFtUN+b8Vi3ml/V/U/5b5b5f5bu2b9uzbt07Pq15XLYEdLUbnRLytQoktXEZB3HmGMnT4GmWReAPp1VjCegmG8RQZiAbkgXgWPmIclHxC/ij0HH6hGLfNGf/V/P/7UsRFgAo8zWPsvUXBN5UudPadpqEdR/OfOb8N4b2aNmjTp1/Xqy4brSHQQD3yUAADKoBEc8Hb76Q7F3EFQYigHltczTcDhGkzzIfIhAcrFXr4iUb+q6Ly+/oGHnBflugXTeIFvOfyjeVf0L+hf5fL5XU/fXq1d3+7fs+pQhgkgCn8uSUmiTAR1sPh1XwLL2GNzHkKsE3rFbS/8v/9OqmZF7FsdAlBfWIcj4r/xOpX8a57qZ+ojz/uN4P8f/7fT5Pm+37+EfU6rXq7/nd2/bh9//tSxFOAClizVa29TsFQIOv9qApgUEUHYAmKk0SpX+cEVbDeNf07L2kEK0RVBodnooFQkSrf/u487JpbawHEJK/OAuodYlnrGMr2fzP5FKfnSzzrqufqbu2/fs2aNuTyP1ZTK5LHPoeoK4ISJLXqizlJIsKKZpJPys5cjZXnadLf01UYFXw5lHUxi3LgO21g7wfk/+G/mgBy3OCub5cv6v9/Kkud2YmxFkdevK5Z3q19lTKm1Nzu/OUr2qBoBmBbZzyJPVXSoXWJ7StUJhpVdfL/+1LEXgAKZJlb7WGjwUsR7XmHqkZMvEaZbThwh2a+cPQXoWLuIxyiBz/4HPgofx4J3g0DbxUL+Lht5VvOJ/Qvrd8/s2admzZ8Q5XV9mW9dsswIxOqtLStppKOY1EmD3QcVqJGiAdQl4uJQQgA9kvfRvHOJQvJAAXEfDf8yBZH9amfwk3hX0f7/H+gN6t6p6jGyWcwzhz5PZp+nLZb4k3HpWpQNQUhSDUdbTchtnBCeRrPfefCLjQOobqi/O4h8/xluTBDYDGcj8wd/1Bx5oOfgf/7UsRpAApEqV3tPUlBQJmuvPaWHp6iORzigTDD6AvF/lC/yXp9TPlud27/hjOf/R9enRlHKBAOSxAsAggtC+2ACVQuwIZMTWlFWmMHZSSjwcaBoqKuCjC6j+kOwOdkgthM6j+n/kABdNgugvSjYggJ26gsl/LFvECKfKPq1H933bN2zNZ77dv0/L/1JRVgVgVlWU1sRJTetqhVCq5U8odtrFZ8m9tUsqGEhBK/4SI8hY04xpxQoNqPhoJdtEJsWazAUCP47iP1D8e8wI+Hchkf//tSxHWACmTBZey85dFREap9t6kooyOjRr7t/3b63Vd/+ikRoBKDaI4tbsBbkRZ4Q1IKYl70DhqUKriyCzS2yxbyAkdP/+iGAWTyZVwiwMdv5ABUbqBl/FZ/JS/hdhzqRDbxenlDtXdV37c3o0acI/Zp2a8W7vA6cIc3eGp/bY05C2j6GzQnpMEWOQaaGk6Vr6CYQ31V/k9h3gply2MZMCXebARS30xdH/IN0Awl4pGPFb+Jy2D2K4riv06tDqtbpd/pP1Nqbp+/0DABwoBYQIL/+1LEf4AKRINx7D2ssU4TKr23qZjSlhQUqJpQBLVrNJZUOC8MM5JmVmel0Oj/9vCKKeJeiuJS479QY9hiSdBb+TFvKFvGPzG8qW9DvQtiLbqyml3pdQ6rW6pm3Zsz1bpALVBZCHdfe75pNyleIg9G2CEvmgb6JB5GNFtkTgRmJn4SI/C6oc2ogXgc9AHW54N5P0ARL+LA51EGOdjDPKcFch8viX926WfRpy7/W3Zs9WvFBGIGYQYjQqVopNy1lQMuw3EUte6QOGnoLGwy2L1JkP/7UsSKgApYj3nnwPKxTJZpccepKErt/8FxIQzvFOdDnv0hhn6wnBl1iZFvjDkDzU95JlD3P+gfxfJbMlknbpJ2/f/Xq1Ea9X+RPnBYSHV7f7WRuQnI3j1FQVrkgSVimKYQ1DqtQbYjV/S5mHsTiWAXdgFkv/QyCw7vlA2LdAkJ4iRzy5bAOEsGMlqxTRknS2htGn9lTK016madPpALwAFAxBNFkRYjLUjAhtBfoShkTFYkSyKUOrLsayfqVmP/74JlkQ3Nd9Hg4AX0AB8qebzy//tSxJWACiyPX+y9Q+FOE2n9t7Ug5bxuW9m8o/lDtZ+g9W2pGRrMad1Rf47HPjHwr9r//AaaYGlalVprZZJI4dWnSFZFQNnRYYEsoaibUdwVYCSGTr/wy9A83CeYThh+PAOO8Bp/Q5vZvGxPAWBsxhXFce6G3xI2cPVusXEraWabCMq2jQj/0BBgbH+bb22u2uzvInjBwP2j0LYDQV53ANICEOm0E7ixq7P6RSqZZq4E4FviUR5RSXKMb5q9TCXVzbZw65QiqALIKsiJt7Kj0/z/+1LEoQAKaHd356VUMU0RqPnMHHiOUO26XSn1u6v/kA/VADMiUnbbbSFxhZgZ6Ad+p8StYR+36UMdojVXnX/8VuQV6XdGoy2yplgLI7Fq8wsfuDiXUq9Sp1dTtml9+jEdt26sPfBM153s4q8lr1/X//6wiQZNtN/LLK6Y4jOItw9gHSAjaYjDxwJDg8PaAnyDIT+M/wlArp/hCwhLN/hXFt3/jnVgeinmod6NoQKlyfOJvzSH1+f8zpCp7utvPZcn/f///48mACQHaIeP640yGf/7UsSrgApgd3HsPOkxUJHrPaecfJEgFgC3DaoQxwAlbxHCVso2xVpqfRhDW38ZSQn6uXQV5+pJ+sS/OmZ459FvW2m6zd8ng7lvr/ynK7AXf/X7P//QCB4AMRxOWxKIgLSKgHgS+jKQVy50BogL7jjTo3IHWkS3rE6flQXE9ysJc350FYP0RvchtQDCfmsqzTCa9fr+CLdVemD0v//0K//rRf///9P////+hY8o1SC3LZLrFGkQpUFAFAsTGPIPhUAmCpzOCo5GYOvZ23QBFoai//tSxLWACjS/R648p9FNGal1t50yVEoGvTMG6AYULfIA+4GGAag7AyejbOIW40U+Lt/4hLQ7k/m+XqDJ38j/t//qEgcILdsg2sdjQDWi6oBuxtMAq6a65Tup+MVtRV0C8EO/UF18mhJ35kF/S8WeNHDAFdD1YUbq2gdGDi+Ec50AvyfMUgd/2fq/RkHyUrgr/I////HtUDZXh4af9LUkEUkkRnQfjX9LVNnlZ9CKa9qowsYZOpZgHp+OwEefnVP1DlSTRLpkYUxoMcjdm5g7K/P/+1LEwQAJoIM77r2lQVWwp3XWnXJrQd/F/KFAT/rfIZKrHE+t+t/qcyc//HJALUkstkbjaEuZaYLhgLi7Em1Ys3siXDSY/2Up8c/iT9/lQDNfMjxT6hhOtWosSdujE7qjqwUx3/VqdWGycGPr/9R+jJ1f6vQDDfvvWc+7O//gdQASra7GwQAArEiiYLZLxNYOk2r1iz2LLW7U3+bPExbH/hH4GfnA3jhNlPYpZWVM6nSd/0Hlcv7XfX/T+//zP0/9XzV//t/6f/////QWgACAYP/7UsTNgApItT+uwK0RRxyodcaVagADkikGLBgEpguiXG5+AIEBFo0M3fiA1YY5X1i+zF7/PKQ0/ZRL/hvFHleUGHmyk17p2U29NHHShd57Xs2dPo1qdWqn3+d+kz/uhw4c/+Z35vq5v///jjf8VlxMLQBxGDkAENpvSQFgAP+X8MGUWE2swMCc0iws91GRr3iV05heIL0HvKlAWi6vdx+jFThbkqrPRy2Yb/lx8LlyH7+d5P8qen9v/8//ypYnMf/Kf/rf///zi3/FQuUFcFgD//tSxNmACmi1Wey0TXFJICg1xYniY4AAI44QAqcwGAJDBbQTONcKAHAbhgCCV7XFF0gqTP/uvzz/5juoG88yVUxqHUSBDC3EDou3uHMMI/R/Z9ajPzps7al1pJ/rX9Hzr5nUbnZ/+pm/86tTfON//yae/1D2czEWCnial9UBUwpQABrYiA4MGVac3MwvhEBSCgDEf2UQ2pvLM20//gLqQ7oKMdimRmc1GUtHU2rJAnkqRv1P9/V+d8/z39L/1vmFZeJBb/TqPf/MP8z/q///UXD/+1LE5ICKGYUvrxTxAYQwpW3lnejw0jKBTDxSAASAInIQAl6AAQBVbU0pQojARAhU6YHEFgnqnL//N9RbiipGQxj3Y4Mry3OW2vTZY/jOo99Srtv59fL+idatu/z1H89/OTqKbG/0P/+plv/+Z///uMtExClEHDYZABJKInRQAhNEYEBgLqkmTmEwFxp7N3ghuS/Z223o+b6sNjCXRpU86yI9Jlc5ErlcVCUWj/oYpx1X6nVePWyrWn/5v+b/XJzShf5v9vM1ZW//IXQz//qJjv/7UsTpgAuNhSuvaULBl7CkpeE1+DAKUCQFolACBLgAsASIwOgo+WYDYWxgPAGo7KdwFElQzr3ftxPb/x4rOsitVx+lpuWuv/yTHoPIh/qSatfsjW1Nvn6uj/mf85+ofCIXj/0v1I+m3R//pOou//9SRsI4cYDvHGUFAyEr4UAL2iEAwwPE3THkBkKgBKgSlLpTbUbs/+XC/+E5Z0UYx11Cu/IjlRipOv/KBcGl5norVvR2erzUeua5vfX7P+dmXzHHn/8x/N6p6N/0Jn//+RCH//tSxOYAC2GFJS8Jq8FzMKTx4TV4AGBXC7cAEAECUgAAIFMvYwbFjTQwBwAoA6cy5XaFUbLvUe+lrc0NaJKrNVorep1ILrqprQUkmi/5DHEWG1L3Vdal2dWp1szUO38q9Z//3Y0z5dMlz//pN/29Nv/K///yshA3xsHsfQBbJdbtQ40A5Kcxgo3pwIDioYUs17mktSobdhfDpCUQIMyJqo4VKuleGr0W7OiN/INZpfJ1VLmEFIVCkd5upmp0epUff1y1eQSRKf+Vf//t+en//8X/+1LE6AAL0YUpj2FCwXgwpGHhtXgAAJB4DGbqwABMEwCwBjBaLPNPYD4MB5RqTNb+lY9XvVBJ8KkCPRSWUbeFloTiTJtyJRiBH/y0nyh9S9m7JrUvf/o6D6tSXr9X2Wimg1P/3QbW3/1G/1mH//3ecDcEDJIoqgASio5IwSQA11FIwXBZQ6QEMAlVc1CRw406hvHKT64kWzK1ZSDGQ0JDcUMFvacm2Zf8alR8OfPPXd0tPbcxv6Met9W156Pnp7urmnNo2/7mZ7f5nO5V5v//1P/7UsTngAuBhykvDUvBhzDksZ80EFaLhwJwXbACRqOWShMgCWJdBwiHqgOtUY+nwy9NCPV5w9Blz43DYWYpFc+kForWI4p8OEQjFV7e5cUHL91nmsrTiR7b30M0Ysierfoj6nP0zChnTQ8/6f/3/3X//+JMoCYCwIj6ADTcksTCaADsRcwgPQ7uBEFABD66Hfbg4mV46QcJPO7ApBKAjXDLHbJM5oIRTbbX9lKOX/RJrUPuesxHfRx5RbfWa7davIDs/3PM/qnn/Rra9GP9LP////tSxOaACxmFM66MqcF1sKTl4bV49Dp7gSIQOAG03ZKmSgQF8NbMDmOOfApFgYhtyIfehcDQ3641AJGDseI71VTBxTWyNo951TlPnL8oXGxYZQz13fWcc7VTorUON/sfTtV686fQ4au36m9UT7W16U/S3//6lhaEYgGzVQKK65EAAaAbETCi7ju4NRoDHfYg7cpV6zjGrcQhRCymFSxBwSeBT33uqUd6nXb0LDMhJkINKMaujuumy+ndt0RDe1GW3lsyhYYOW//LX7f/f/L///r/+1LE6QAMFYUprw1LwXewZbXRnXmF+FkBwLoNWAZm1wgkABbrJxFlxvgMZdRub6St0aWexFhSLPNWBvKR3Qj9UochaVQhL+/JtmcfCWRlkT1ZGPmMl3XbrNPRUbRVn96VNX1SdQ88xuit+6nvt+z69T+pb//9BIKg+FUWVQE7EW7YwmQA4VUAxUY7BGIAAbvBE2zFWqerT+7QjyzGcKLIyBAhnMrHVHrH75EvXj1S5J9HsvWaRKx5xZFPdWOVmp8yiPalPpzTjTm8//3/576+///7UsTngAu1hy2ujUvBfjDltdMdMP//zighwmCq4BLabcsgJIAdpVUwDkwyFCMvk7sqqyhoVe3dIVVRGlzkMFXMS7G3XisQzboRgnbormHEBcl57IbtzFm3eyI1btN7LdqnpWqL235KUVrd6N/rb/p1////ngrCWSC5ADhkdmqEaID0PyAcobpA6I0ZlVK9UXvOmYPJ8gTvPCGQIXKogsRyu2yvo29Z5pQx9jT7voY7Hz1mHJW6mURlM1VDmnWWhz3RttTnllb6N/ov/p3////l//tSxOaAC5mHJy6NScF+MKTp0al4RIBYChJgFInJrqy05lcmC6kdHBZb5xXelr1Tt+fM5/m0Yg1PWtRwD2TMvc094k1ntZWN9aFCRA6m9na7HGL1NVUHz0U9lR6o7tuiEue93p00Gqsrf1f62/9v+///+GQVEYSVADbkk0kCSACW7UTA8oPWgeLQLCpDKns7ZFkHGZjUzjyM4MICOGbEkUKKsPEmxoSt/ypGxej3ratu3MVWcy9CFDT0edvOfmtNevWdIlT7dW+pxzf2t/zG////+1LE5gALjYUtro1LwXGwpXXRqXjQahIEsgAEJvkEArKgML1ODZGGgHeWTzlO8muSkJOqfeo4K7sEa1MlOQjO5TjBf/jsFmTz85oVWXtem6bt66kfVXq+taUxqfoZms2TRQYxMq2zq2/qN/+h/0iz//3c4N4FODGdZQPW/aAAIs1gwvGA6vAgmAeBHXfh06KkvWOvHOYjredc9uXKyt+INc1JGb5mT1l9bqQ6K3VV6LV96q1dd+vq9f1ujopGCJmqpbLfUh/btq9Kr/NW//+mOf/7UsTngEuRhy+uDOnBdDCl9cMdOIK4nlJgFl79Bt0rDC0lxtmkY3sgeWQG79JVqHrGekqj7e1zy4P0CmydfM0qZvd+s223yaYD4fLr11oO3UptdJG1NdOtlLVpKrWkzqo0GVQrRT6cqReovsv3/pZk2putjv+Vf//jOgEnEYUh/zbb39SyAP5KBChhpMzeWO/GKFm7arwlK6H7OwQXmZx9QuRwT3Q6vJ/zgmbetU20daGZjyM91kdrNtR2toq32Lecxyv2VuX/////p//a4kAB//tSxOiAC9GFLa4NS8F8MOSl0bV4MAqv9IAAikXIMDWfOAQySLfiX4S6FXL/7O2gbIusnj/SK5hq+szqdtnYbWx45X0OoehsOA1qeu61f0FdlP1JrZG9anuitlr61erdbok0zP8+tv//RZWtuo//y+3/1DLSGAHiEnGOLyoBJkqRuhACRrAATazhYOT3iU3UmIkyfyvj0mL8TCWu7xHbu1ZqmfwbdDtLfkZOK5IfM6ItW+zHo8lMSY5ytSybab9rvm97jAj9lI/+35zddlb/zf//+1LE54BLcYcnLo2rwZQwZKXTNXj1Y8VgK4Bggx6AC0nHFEE/LGBDbwFEnhmq9yGpxRz4ZCzQORYMx1pmSibqdHRRZCauxuronoSlhHcvVlpZp9Ocx7qqV3qybo6v+jsldFbPPOIyv6f879Pqey+hn///QNwfD4fNAKiTclbCRACBBpAWt5ggJMzmqG5LXFq2tUprMOQZZngtYigJkpG8EoQ9ZTViW/k5OQjc9yI9Xq55j0ZKnozE9H5/n6nGra21WfV9J7Eqq//Rv9TjT6v6+v/7UsTlAApVhTmtjEmBmjCkpdM1eBv///IzANBWEWwCTTTkcYSCNog5KzOwIXW/1XKXxW7+N3PnOb3vtHlvH6RTY4Qi8gtArce9rnP/QYM4Lx80eZ5mU1Iy87/KaKenVU7azk/ss8op3/p3/enp8+j///6D8QgD4UQmugXHutBAEHHKBFVODAhs0as5Ozk+8wTL9UXp8iT6UWMIRYKbZklXa31Hx+LpZ6bIrXddWnqReui1Vknp9TptZtL/ONuS7H/1L/eit/ar/Q///+oOQRgk//tSxOYAS6WFKY4ZScFrMOU1wak4hfHg4AkKcmlYSRAfuHgpXlMy3tqVu/K3e5xjKsUxertzogCpPwWQIOhmEKN5RXY/0KlCxaZVtj2Y5KM7z9zEM1dUMPQ3dD6TaGql9z3bJTZP+pufU/O+mk/9fo///FzHC2DIgysKVu/hAARA1/jAy1D2Alqr+LQNYk+Fi2wlOPSzoNSUESzFOamxjpS5QREs/5JGZcNae2mtTpHa1X37u7LZkVrdWg621VM6JhrdSGtM5N//Qr1Kf7f/+mf/+1LE6ABMPYcprg1LwW8w5XXBqnD//1iflFQ3BMBtFvBv///9tJGiSgc20bRbDqQhKpBVtToUq+uqBmweTLUOVkMGc0DqLc4VCC3iabOUGj0RVf7aHdU57qq9c7HVunQyHfVa7MdT/92Qv///+q///W4Mj0IAOSy2yRNtAOA6IFFPAdX76EThijlwjNFICBYgz9DPHiiHVEtFRQYt4ShKBGZRAcDbCxFEC4hCEOWFBPayt2lqLnd1l74L0Wm3zkPW27A3uYhBcLdiHXHhiRkCx//7UMTnAAsthycuDanBhjCltbGpeJkJsYQgmyBNYIWMB1kHTBFDyIchKZUA6yfRFpAByYAKMJuY6YIRQRWYiDnIHyf4TqM0vkNuMttj2ZlnDKG/+/18SiL0lOBGtuS26NuNskgOgZACigZiKCxHElOA0egkCKANFXEKhoKwRJsyHSY1hyqzKRhRwFGUmqrtSnsTZQ1JoakakxnSakxhQKwFAr1ls87nXoT9jqPTrLbqTEFNRTMuMTAwqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr/+1LE5wAMTYUnLg2rwVEwarTxiX6qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7UsTpgBRlHzus4MvRTZapdMSNXqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq\",\n  duration: 1.332,\n  format: \"mp3\",\n  license: \"CC0\",\n  author: \"Kenney\",\n};\n",
      "type": "registry:lib"
    },
    {
      "path": "registry/soundcn/lib/sound-types.ts",
      "content": "export interface SoundAsset {\r\n  /** Unique identifier for the sound */\r\n  name: string;\r\n  /** Base64-encoded data URI (data:audio/mpeg;base64,...) */\r\n  dataUri: string;\r\n  /** Duration in seconds */\r\n  duration: number;\r\n  /** Audio format */\r\n  format: \"mp3\" | \"wav\" | \"ogg\";\r\n  /** License identifier */\r\n  license: \"CC0\" | \"OGA-BY\" | \"MIT\";\r\n  /** Original author/creator */\r\n  author: string;\r\n}\r\n\r\nexport interface UseSoundOptions {\r\n  /** Volume level from 0 to 1. Default: 1 */\r\n  volume?: number;\r\n  /** Playback speed multiplier. Default: 1 */\r\n  playbackRate?: number;\r\n  /** If true, calling play() stops current playback first. Default: false */\r\n  interrupt?: boolean;\r\n  /** If false, play() does nothing. Useful for user preferences. Default: true */\r\n  soundEnabled?: boolean;\r\n  /** Called when playback starts */\r\n  onPlay?: () => void;\r\n  /** Called when playback ends naturally */\r\n  onEnd?: () => void;\r\n  /** Called when pause() is called */\r\n  onPause?: () => void;\r\n  /** Called when stop() is called */\r\n  onStop?: () => void;\r\n}\r\n\r\nexport type PlayFunction = (overrides?: {\r\n  volume?: number;\r\n  playbackRate?: number;\r\n}) => void;\r\n\r\nexport interface SoundControls {\r\n  stop: () => void;\r\n  pause: () => void;\r\n  isPlaying: boolean;\r\n  duration: number | null;\r\n  sound: SoundAsset;\r\n}\r\n\r\nexport type UseSoundReturn = readonly [PlayFunction, SoundControls];\r\n",
      "type": "registry:lib"
    },
    {
      "path": "registry/soundcn/lib/sound-engine.ts",
      "content": "let audioContext: AudioContext | null = null;\nconst bufferCache = new Map<string, AudioBuffer>();\n\nexport function getAudioContext(): AudioContext {\n  if (!audioContext) {\n    audioContext = new AudioContext();\n  }\n  return audioContext;\n}\n\nexport async function decodeAudioData(dataUri: string): Promise<AudioBuffer> {\n  const cached = bufferCache.get(dataUri);\n  if (cached) return cached;\n\n  const ctx = getAudioContext();\n  const base64 = dataUri.split(\",\")[1];\n  const binaryString = atob(base64);\n  const bytes = new Uint8Array(binaryString.length);\n  for (let i = 0; i < binaryString.length; i++) {\n    bytes[i] = binaryString.charCodeAt(i);\n  }\n\n  const audioBuffer = await ctx.decodeAudioData(bytes.buffer.slice(0));\n  bufferCache.set(dataUri, audioBuffer);\n  return audioBuffer;\n}\n\nexport interface PlaySoundOptions {\n  volume?: number;\n  playbackRate?: number;\n  onEnd?: () => void;\n}\n\nexport interface SoundPlayback {\n  stop: () => void;\n}\n\nexport async function playSound(\n  dataUri: string,\n  options: PlaySoundOptions = {}\n): Promise<SoundPlayback> {\n  const { volume = 1, playbackRate = 1, onEnd } = options;\n  const ctx = getAudioContext();\n  if (ctx.state === \"suspended\") {\n    await ctx.resume();\n  }\n\n  const buffer = await decodeAudioData(dataUri);\n  const source = ctx.createBufferSource();\n  const gain = ctx.createGain();\n\n  source.buffer = buffer;\n  source.playbackRate.value = playbackRate;\n  gain.gain.value = volume;\n\n  source.connect(gain);\n  gain.connect(ctx.destination);\n\n  source.onended = () => {\n    onEnd?.();\n  };\n\n  source.start(0);\n\n  return {\n    stop: () => {\n      try {\n        source.stop();\n      } catch {\n        // No-op if already stopped.\n      }\n    },\n  };\n}\n",
      "type": "registry:lib"
    }
  ],
  "meta": {
    "duration": 1.332,
    "format": "mp3",
    "sizeKb": 11,
    "license": "CC0",
    "tags": [
      "zap",
      "three",
      "tone",
      "down"
    ],
    "keywords": [
      "zap",
      "three-tone",
      "descending",
      "power down",
      "error",
      "wrong",
      "negative",
      "feedback",
      "game",
      "UI",
      "alert",
      "failure",
      "digital",
      "synthetic",
      "short",
      "distinct",
      "notification",
      "system",
      "incorrect",
      "warning"
    ]
  },
  "categories": [
    "zap"
  ]
}