• 4 Posts
  • 18 Comments
Joined 1 year ago
cake
Cake day: July 23rd, 2023

help-circle


  • Google Reader was the best. Not sure why Google killed it, but it was really good at both content discovery and keeping up with sites you’re interested in. I tried several alternatives but nothing came close, so I gave up and hung out more on forums / link aggregators like slashdot, hacker news, reddit and now lemmy for content discovery. I’m also interested to hear what others use.







  • Keycloak seems complicated, but it’s actually not that complicated if you use it for simple OIDC provider.

    Just create a new realm, then go to client -> create. Enter your client-id, with openid-connect as protocol. Then, set access type to “confidential”, set valid redirect uri to “https://<your app>” (or even “https://*” if you’re lazy and want to use it on multiple apps). Then hit save and go to the credential tab to copy your client secret. Then head to “users” menu to start adding users to your realm.

    That’s the basic setup which should be good for home use. The good thing about keycloak is, as you grow your homelab, whatever stuff you may need later can be provided by keycloak. Want some users to have access to app A, but not app B? 2 factor auth? Allow users to login with google account? Heck, allow users to login with another sso provider (chaining)? You can do pretty much anything.













  • Senior Dev: the code is self-documenting

    The Code:

    f̴̡̨̰̤͖̭̻̖̻̥̟̲̓̀̐̐̓̈̀̕͠õ̷̙͍̲̳͕͙͖͚͎͌͒̃̀̌͐̂͒̕͝ͅr̸̘̺͍̣̩̣̬͌̑̍̈́̅̕͝ͅ ̸̟̥̠͉͚̱͉̺̹͓̾̓̈̂̀̈͌͐̽̋́͂͝͠͠(̸̨͎͉͓̹͚̈́̈́͂͝͠j̷̡̛̬́̀̄̌̈́͊̕ ̷̫͑̆=̶̢̫̥̝̣̙̖̥̣̾̀͑́͛̆̉̕ ̴̡̣̬̼͓͇̟̠̞̝̂̾ͅ0̴̯̦̩̻̘̝̯́͛͂̉̏̈́̎͠;̷̛̝͚̫͇̭͎̪̟̤͋̊̀̅ ̶̱̑̍͋̐͗́̓j̷͍͇̖̦͍͎̰͙̯̃̂̈̒͗͋͆͗̅̚ ̴̡̛̬͙̫̭̪̻̭͚̥͉͖͑͌̀̽͋̿̈̍͋͊̂̊̚͜≮̢̨̛͍̲̞̍̏́͐̿̈́̿͛̅̄͜ ̴̨̳͖̱̞̬̹̠̗͔̠̙̩̗̋̎̾̌̽͆̎̋̔͠ͅy̷͎͚̽͗͋̋̽r̴̢̨̡̛͉̜̰͚͇͎̘̄̎͒̓̽̅̆̊͐̓̌̽͠é̶̲̹̑̆͗͊̀̏̇̐͗͘͜͝s̴̢̛̩̬̖̩̞̞͒̈́̍͒͜͝͝;̵̰͕̬͂͆͆̂̌͂̀̋̇̋͝ ̷̨͓̹̳͙̰̳̰̝͚̝͔̫̬̀̓̀̿̈́̆̋̃͊͘͜j̷̡̡̢̠̭̲͔͎̮̰̣͕͚͇̱̄́̇̌̄+̴̡̜͍̘̮̦̠̜͍̏̽͛̌́͗̃͊̃̕+̵̛̪̬̫̬̣̥͙̼̟͙̖̒͛͆͛́͑̈̆͛̽̚͜)̵̨̡̙̖͕̙͈̜̫̗̳̲̈̾ ̶̡̛̞͔̲͔̬̐͋̓̓̔̑̽͒{̴̧̨̤̙̘̲̥̻͎̈́̓̋̀͒̾̈̋̍͗̂́͌̕͜ ̸͈̫̣̥̠̫̙͙̃͂͊͒̒͋̄͑̏̚͠ͅ ̸̧͉̰̹̻̝̟̻̓͊̈́̓̆͑̈̿̀̅̾̈́̔̒͜͜ͅ ̸̨̙͓̪͇̦̖̗̹͔̤͍̃͑̐ ̸͉͓̼̞̇́́̀̃͌͒͘ ̴͈̳̭̹̻̞̬͎̠͌̃͝y̴̲̠͓͖̫̹̙̖̻͚͔̿͆̀̀̉̓̈́͘̕͠ͅ ̸͇͚̰͈̘̣͉̬̌̏̅͂͆͊̈̄̅̈́͠͠=̵̬̫͕̺͚̬̩̞͙͔̹͖͂ ̶̧̛̬̥͈̰͖̫͚̥̼̥̦̭́͋͐̊͛́͆͆͛̚y̸̳̾̅̈̈́̂́̊̋̐̽m̴͉̯̳̠̣̥̑̐̕a̶͚̳̣̼̬͖̱̿͑͌͐̓̓̌͒̑́́͜x̶̨̨̛̛͓͈͍̜̝͇̜͉͈̰̓̋͆̊͋̎́̔͛̏͘͘͝ ̸̗̠͔͓͙̥̯̋̄̌̎̊ͅ-̵̛͇̟̣̆̅̚ ̶̛̌͂͒͑̍̽̓͜j̵̛̫̪̼͙̇̕ ̶̸̧͍̳̣͈͇͇̼̱̠̭̤̜͕̫̗̝̟̬̪̳̖̤̜̌̏̀̔͆̅̈̔̾͐͆͒́̂͝ͅ ̷̱͇̱̳̗̱̓̔̌̂͑̈́͋́͊͐̈́̕̚͜͠͠d̶̼̞̰̟̩̹̯͇̓͜ͅͅy̸͉̑̀͑̐̏͐̍̀͜͝͠;̷̨͔͖̥̫̣͉͖̭̳͇̊̂̀͗͊̇̕͜ͅ ̸̨̛̘̬̤̩̦̞̤͖̤͖̈̂͒́͐͠͝͝ ̵̪̘̦̺̰̩̲͉̬͊̂̇̏̽̓̀̍̀̚̚͜͝͝͝ ̴̫͍̄̑̓́͛͗ ̴̺̔͛̽͒ ̵̧̳͕͍͍͋͆̈́̀̀̎̄̐̔̂̂̋̚͜͠͝f̷͍̙̘̫̲͉̮̪̮͈̖̹͒̈́͠o̶̥̝͕̤̖͉̫̟̞͍̿͐͗͋̐̽̅͒͘͜r̶̡̗̻̣͍̯͚̫̥̺̘̜͐͐̐̋͑̿͂̇̔͂͂͝(̴̰̩̱̼͓̯̖̪̖͈͊̂͒̈i̵͙̓͒͒̎̀̑̓͊́͗̔͛̅̚ ̵̦̤̭̙̖͙̰̼͓̗̣̙̙͂́̒͑͜=̷̡͙̘͓͚͉̪͓͔̲̣̈́̕ͅ ̷̢̢̭͇̳͍͖̜̩̗̩̙̆0̶̡̛͕͆̄̑͛́̽̀͂̓͊̈͋͝͝;̸̢͕̰̝̘̋͌̂̇͂̾̉́̃ ̶̢͍͖͈̤͙͔͎̝͂̂̈̀̆̃̈́͑̄̑̓̕͘͜ì̴̜̼̦̞͕̠͚̘͕̼͇̼̉́̐̈́̋̀̑̈͛̚͜ ̴̨̻̖͈͖́̄̍̓̓̀̒̈́͗͐̏̔̑̇̕<̶̨̛̛̝̼̯̓́̔̈̈́̎̓͒̒̓͂̀͝ ̸͈̖͖̯̰͓̭̦̙͓̰͋̓̑̐͐̔̓̈̚͜͝x̷̯͖̳̼͎͙͚̖̫̹̿͛̏̕ŗ̶̦̩͈̗̝͔̮̙̋ͅë̸͙͎̝̯̫͚́̃͜͝s̶̨͉̬̮̭̻̬̦͚̪̀̑̊̾̂̍̔̆̄;̴̨̭̜͔̄̿͆̇̈́̈́͊͗̈̔̇̃̈́͠ ̵̞̫̦̞̯̗̞͍͓͚̱͔̄̒͗̅̈́̾̉̐͋͒̉̉i̵̱̔+̶̠̝̗͉̇̆̽̐̿̌̈́̎͜͝+̷͉̜̽̇̒͛̄̈́̾́̽̑͆͒̂̔͛)̵̫̋͠ ̸̢͇̪̲̪͉̰̟̤̫͎̲̱͈͐̔{̴̢̧͖͔̮̳̙͓̫̤̰̩̰͕̣͆̓̒ ̶̡̧̺̥͙̳̣͙̰̰͙̲͔̙̝̈́̄͊̓͐͊̄́̓̐̚͝ ̵̡̢̧̧̨̜̗̦̥̞̱̽̓̀͆̆͐̄̄̅̌́̀̂̕͘ ̶̡̙͙͇͚̞͎̂̎̈́̉͂͛̄̎͝ ̷͙͓̯̣̱̜̬̱͎͕͍̗̿͋̾ ̵̛͔͎͇͍̩̞̣̥͎̪̩͖͕͗͝ͅ ̸̧̨̙̺̩̯̦͇͕̾̄͑̔͛́ ̶̬̥͔̪̝́̆̓̀̍͗̈́̋̒ͅḑ̷̗̤̰́͂̾̐͌̔̀̔̊̏̐͒͘ȏ̵̧̞̯̥̩͔̻̝͙͛́̄͌͆̈́̄̀́̚͜͜͠͝ͅų̷̞͈̖͖̰͕̅͗̓͛̈̈́̄̓̈́͘͘͝b̶̯͉͙͓͓̪͉̖̺͖̌̂ļ̶̤̤̬̝̠̝̳̺̼̗̋͆͂̎̆̏͂̏̚̚͠͠͝ͅĕ̶̘̪͑̑ ̸͇̳̭͚̥̠̭̠̻̣̩͂ǘ̴̢̨̧͓̩̖̪̪̤̣̝̪͓͙͉͊̈́̀̑̇͌̑͗̈́͋̐̓̉͝ ̸̧̛̩͎͓̻͇̦̔̋͆̄̃̆̔͆̀̋̈́̏̚͝=̷͔̲̫̭̝̤̟̙̤̳̠̫͓̺̻̓̈́̄̈́̃ ̵̦͔͋́̉̊̾̊͊͊̾̔̀͒́͘͜͜ͅ0̵̯̌͒͛̽͆.̸̹̈́͑̄̊̐͌0̶̨̧͕̲͇͕̼̭̮̿͑̉̇̒̿̾͐͠͠ͅ;̵̨̝͉̫̙͉̠̤͛̾̅̋̎̀̈́̽́̕͝͠͝ ̶̡͇͉̗̞̤̪̯͕̥́̔̿̏͊͌́̊̋̂̚͝ͅ ̷̫̱̹̤͂́̈̐̐̊̓̉̿͐̒̚͘͝ ̸͎̥̼͎̤̜̪͇̇̀̀̄͛͑̈́͠ ̴̢̘̰̺̺͓̬̪̔̊̋̀͌̂̍͗͘̚͝͠ ̷̢̌̀ ̸̡̛͊̉̏̒̍́̋̓̑͊̓̕͝ ̶̹̿̂́͝d̴̢̠̺̣̱̗̳̼̹̻̖͉̜̜̬̈́̋̿́͂̒͠ǫ̵͇͗̽́̒͘͘ū̸̢̫͓̤̳̖̦̬͕̹̫̹̟̦͆͝b̵͚͉͐̿͌͗̽̓̎ľ̸̺̗̝̟̰̓͋͛̃̃̀ȩ̶͇̲̪͗͋́̒̒̍̇̃͠͝͝ ̴̛̺͕͚̒́̎͊͛̿̕͜͝͝v̷͙̳̳̱͉͓̏͒͌͒̅̈́̍͝=̵̱̭͎̳̇̏͌́ ̴̡̛͍̼͎̲̻̦̙̬̆̎̏̈̓͐̑̇́̀́̔͘͜0̸̧̘̝͈̘͉͈̻̝̞̋̂̇̈͗̈́͒́̆̎̾̿͒͘͝ͅ.̴̨̜̻̮̦̣͈̮̓͒̈́̈́̆͊̒͂̓͂͝0̴̢̛͚͙̞̭̭̼͖͛̏̃̆́̈́̾̈́̀ͅ;̸̡̽ ̴̡̜̺̩̼͈̺̦̔̒ͅ ̶̢̨̛͈̥̭̰̞̳̓̉͊̊̓̅̅̍͒̆̈ ̶̭̰͍̠̺̼̗̠̣̳̳̻́̍͌̔̐͛ͅ ̵̢̬͔̤̤̰̏̀̊̋̐̎ͅ ̵͎̥̹̝̥̪̫̖͛͊̌̾̇͜ͅ ̵̡̭̩̪̤̖̏͌̀̾̄̈́̆̉͘̚͝ ̶̨̼̗̝̤͈͈̗̎̀̓̈́̔́̏̑͠͝d̶̤̳̟̪̔͑̋̇̾͑̿̏̅̍̈́͝ǫ̶̨͇͇̖̙̲͎͎̟͍̮̱͉͂̉̀̾̋̊͂̆͝ư̶̜̙̘̈͊̓͋͛̽͑̀̈̃́̔̓̔b̴̨̨͎̹̫̦̳̫̱̼̜̃̄̏̾̀̌̇͑̓̈́͂͂̇̏͜l̴̨̨̞̲̙̫̟̯͙̥̪͊e̴̱̺̱͝ ̸̗̈́̃̽͑͌̓̓̂̈́͂̿̋̚͠ǔ̷̞̼͖̥͗̂̑͗͠2̵̢̨̻̥̖̗̩̖͕̭̈́̅͂͗ͅ ̴̡̢̗̥̳̫̹̩̪̪͚͕̣͓̖̔́́͘=̵̨̳̥̻͎̙͋͋ ̸̢̧̢̛͈͍̰̠͇̟̄̋͑̄͆̈̀̍̐́́̑͋ͅu̴̠̲̰̯͚̖̞͙̯͚͚͕̅̀̓͒̑ ̶̸̙͍̘̰̻͇̗̯̼̱̭̜̲̮̫͖͚̖̻͂̀̀̊̍̉̈͌̋͊̽̌̐́̎͘ͅ ̶̨̡̡̛̭̻͓͖͙̝͈̤̑̀̈͐̃ȗ̸̧̨͎̬̺̣̥͖̥̣̦̞̫̺̎͛̕;̷̞̞̻̳̩͕̈́͐̾̊̓̐́̄͊̔́̽ ̴̧̧̫̪̟̭̹͙̰͔̗͍͛̀̇̆͂͋̒͊̎̈́̐̽͠͠ͅͅ ̷̛͙̪͔̫̥̠̪̭͍͔͉̙̋̿̀̑̃̔͜ ̶̡̡̯̜̲͎̦͇̗͈͓̱̜͊̋̋̊͗̓̆͐̋͠ ̸̧͚͍̮̲̰̗̲͖̬̰̀̑̊͆̄̒͛̃̄̚̕͠ͅ ̴̛̭̗̲̮͈̝̟̹̜̜̯͇͕̓̎͛̎̿̔̂͛͊̂̒̕ ̵̰͆͊͌̿ ̷̢̧̡̩̺͎̯̥͕̈́d̶͉̒̑o̸̧̤̱̖̻͓̤̻̦͍͈̬̎̂͜ư̴̭͍̬͉̲͕̻̽͐̈́̈͐̌̕b̵͖̉̀͑̂̀͝l̶͙̈̌̈́̚̚ȩ̸̼̘̅́͂͊̊͒̉̈́̽͌͜ͅ ̸͈̋͘͝v̶̨̩̹̜̱̝̮̞̭̖̤̇̿̿̏̀̽͒͌̎2̶̛͎̼̪̦͙̼̫̹̦̥͇͚̇̂̾̀͋ ̶̰̎̔͊=̴̬̳̻̖̊͐̿̈́͛͆͐̌̒͆͑́̂͝ ̴̢̳̗͕̩͖̫͔̝͕͉̰̲͋̏̌̇͗̕v̸̷̡̡̡̯͕̤̰̭͚̮̗̯̯͚̱̩̱̘̈́̀̂͒̂̇̐̋͋̀̆͆́͛̑̎̒̚̕͘͠͝͝͠͝ͅͅv̷̧̯̜̀̈́͒͒̾̐͗̕̕;̴̡̙̠̪͙͚͈͕̄͒̀̔̀̍͌͘ͅ ̸̧̡̛̛͔͓͔͓̰̲̯͓͙̻̺͎̐̇̔̅͜ ̴̢̢̡͍̭̟͈̤̮͎̰̠̹͆̌̓̆̓͂̇̆̅̿̒͂̏̂̕ ̸̜͓̗͎̼͉̰̟̟͎͊̀̑̒̈̏̀̚͘͠ ̷̢̳̫̹̱̝͚͐̅̈́̾̔͌̈́͋̏̓̿̃͘ ̵̫̫̦͉̈͒́̀̑̇͜͠ ̸̡̛̱̜̲͈̙̞̮̺̭̽̓̈́̿̏́̕ ̶̗̲͓̝̏̃́͊͒͘x̷̠̞̩̀̐̊͐̓͒̕̕ ̶̢̭̞͚̳̣͈̦͇̙̒̾̈́͊̑̊͋̿̄̒́͝͠=̶̨̨̧̪̱͖̱̻͓̦̈̈̈̉̈́̈́ ̴̻͚̺͎̰͇̙̝̜͉͕͐̅̓̔̎̂͝x̴͈͔̯͎͇̲̙̤͙̌͌ͅm̸̲̟̳̝̠̃͛͠ḯ̷̡̧̨̟͓̜̜̯͇̙̳̠͗͊̎́͛͋̔̆̃͆͠͠ͅn̶̡͚̮̙̠͖̦̦̻̫̖̱̗̹̟̈́̈́̈́͝ ̷̡̺͎͎͉̖̰͙͕͖̿̈́͑͌͝+̶̢̩̤̜̳̠̺͙͖̙̐͐͘ ̴̢̮̻͎͉̎̋̓͋̃̂̓̓͊̂͛͘̚͠͝į̶̥̯̮̰̬̮̀͗̐̊̅̀̔́͜͜ ̷̷͓̫̖̰̜̝̰͓̃͋̂̿͂́̽̕͝͠ͅ ̴̜͓̩͔̲̅́̾͛̉̏͆̾͒̑̿͘͜͝͝d̶͈̰̖̈́͜͝͠x̸̜͉̗͓̯͍̤̝̞͎̺̤̳̭̂̂;̵̫͈͖̍͒͊̔̍̈̄̇̇́̀̇ ̶̢̧̨̛̦̤̘͇͙̲̺̩̙̠̜̓̂̈́̎͂͋͆̈̏͐ ̸͙̼̩̪͝ ̷̡̜̠̰͙̅̅̾͐̅͊͊̏͊͒͛̋͝ ̸̧̩͖͙̤̝̪̏͆̇́͐̃͌͗̍̈́͐̕ ̴̛͖̥̹̹̰̟̉́͠ ̸̢͍̪͔̮̙̰̲͋̓̅̈́̓̍͒ ̶̢͖̜̫͍̗́̌̍̉̏͒̏̓̃ ̸͇̫̗̼͈̜̙̺̰̫̯̟͉͇͋́͒͑̉̊̀̔͠ ̶̨̖̌̀̀̌͛̒͋̓͊̚͜͝ ̷̥̝̘̦̤̻̘͊̎̄̋̃͐͜ͅ ̶̧̘̖̰͎͇̭̲͚̟̜̝͓̌͋̾́͊̂̾̔̅̽͛͘͝ ̵̬̪̣͍̰̱̼̘̥̩̘̪̦̘̿ͅ ̷̨̟͕͚̮͒͑͆̆̈̊̅͂͝͠ ̷̢̤͕̘̝̙̺̟̙̭͙̏̀̑̽͂͜͠ͅf̷̧͓̖̖̝͓̤̱̠̀̈́͑̈͌̿̊̇o̵̖̟̱̭̗͂̈́̈͘ṟ̵̻̙̙̥͔̥̋̈́̌̑̃̈͑̒̾ ̶̡̢̛͙̪̝̣̳̘͚͊͐̀̌̀̈́̽̈́̅̇̈́̑̽̓(̵̰̫̗̣͇̤̙̱̞̣̤̟̙͒̃̈́́̄̇̚̕͝͝͝͝ͅḱ̷̛̟̾̅̌͌̑̀̈́͌́̀̕̚͠ ̸͚͈͍͇̮͊̃͐͛̋͂̂̏̅̈́͑=̷͍̩̺͎̉̏͗̄̈͝ ̵̡̡̩̻̟͎̮̞̳̳͖̱̃͒̑̽1̸͕̳̰̫̍̉̅̔͊͋̓͛̈̌͝;̸̡̳̬̬̀͊͋̽͂̆͜ ̶̨̢̗̱̤͈̭̈́̂͝͝k̷͎͔͈̤̞̱̮̩̯̩̿͌͘ͅ ̸̡͖̯̥̫̤͚̝͙͓̪̒̀<̶̧̣̟͈̫͍̯̣̹͊͌̑͛͂̆̅͛̚͜͠ͅ ̴̨̡̥̼̲̮͘m̸̯͇̈͊̏̕͜a̸̢̢̞̞̠͙̠̗̹̜̙̓̇͆͒̀̋̅͌̂̇x̷̢̢͖͉̰͙͚̯͕̼̖̙̼̋̉͗̈́̊̂̌̂͐̈́͜͠͠i̶͇͖̅̀̐̐͗̚t̸̥̤̤̼̖̤̫̙̥̠̽̓͂̏̓̇̊̅̈́̈̚͘ë̸͇̳͓̗́̽̊̽͊̎͠͠ŗ̴̧̹̮̬̳̻̪̀̆͛̈̅̔̐͜͠͝ ̴̧̮̫͇̫̝͓͉̱̖̹͚͈̝̲͑̋̀̀̈́̂̈́̈́͌̚̕͝&̷͔͍̻̪̤̭̺̱͉̟͇̤̼̬̣̉̂̑͂̆͂̑̊̄̎̿̿̎͐̚&̵̛̖͉̄̈́́̈́͌̿͗̅̑͝͠ ̴̡̡͇͈̬̮̦̯̯̲̼̯́̎͑͋̀̔̕ͅ(̷̬̹̩̳͉̙͔̀͒͌͒́̑͜͝u̷̯͖̿͒̇̊̍̒͌͊̽̄͠͝2̶̮̙̝͍͔̯̩̽̀͂̊̿́̀͆̕ ̴̹̾̎́͆͌̾̚+̵̧̭̦̤͉̮̫͎͚̊͋̋̅̎͊̽̑͊͘͘ ̵̦̣̙͉̖̱̺͝v̶̜̯̖̟̩̜͎̝̤͙̕͜2̷̛͚̹͓̖̱̞̤̥̹͕̅̒̄͋͠͠ͅ ̶̧͕̮͍̱̖͔̬̼̖͎̜͚̯͓̊͌̅̒̉̅͒̏̀<̶̧̧̹̱̬̹̜̘̯̘̬̬̉̆̋̓̃̅́͐͆͋̑̍̾ ̸͔͈̜̹͓̻͇̲̹̠̝̎̄̈́́̅̃̆̈́̓̈́̚͜͝4̷̟̠̙͚͓͔̻̏̎̈̃͛͛̽̂.̸͔̩̯͍̮͓̙̣̺͓̇̆̽͋̓͑̊́͋̀̓̈͜0̷̡̨̧̤̳̬̤̾̌̕͝͝)̴͖͕͙́͝ͅ;̸̧̧̡̩͙̫͈͔̩̙̝̣̗̈̓̈́̀̚ ̷̻̤̭͔̫̱̫̩̳͇̤̝͂͂̋͑̌̽̐͗͝k̸͍͇̑̔̾̈́͆̎͝+̵͉͔͙̭͈̟̫͓̰͈̅̔̾́̒́͆̉͜͝+̸̨̧̨̧̘͎̞͍̙̗̘͑́̌͐͂̄̎̋̓͘͜ͅ)̶̧̙̰̳̠̠̘̲̬̙́ͅ ̴̡̨̡̛͚͍͓̯̦̺͇̌̀̇̑̌͗̀̓̆̾̾̇͠͝{̷̢̛̙͕̗͕̒͂̈́͘̕ ̵͍̬̘̞̗̥̠͍̥̫̝͇̺͑ ̴̧̪̭̲͙̘͎̀̂̇͐̈́́͑̿̓̈̉ ̵̪̱̐̈́̔̽̆̅̉͑̀̾ ̶̟͚̪̼̥̰͔̱̭̰̇͛̈́̽̕ ̴̯͍͚̹̜̠̺̖̗̼͆̓̍̓̅̈̈́͆͑̾͆̊͝ ̶̡̨͍͖̭̘̳͓̤́̉͑̚͠ ̴̨̧̗̣̞̿͂́̕ ̴̢̧̧̛̯̳̀̅̀̍̄͌̍̀́̓̀͘͘ ̸͉̘̯̐̓͜ ̶̡̢̬͕̹͈͂͐͊̀ ̶͕̪̻͉̜͓̯͔̝̹̳̑̽̎͋̓͌̉̒̈̋̒̄͒̉͜͜ ̶̡͎̠̞̰̠͇̳͇͚̲̟̫̉́͑̊͜͝ ̶̧̛̦̰̻̪v̷̧͙͔̟̱͓̻̥̠̞̣͔͈̋͂͋̒̋̍ ̶̧̻̝͓̈́͒́̓̉́͑͛̒̑̏̇̐̚͝≠̛͉̅̐̾͒̄̐͗̄̚͝ ̷̬͓̂̈́̈́̎̑̀͆̓̾̈̐̕ͅ2̴̢͖̘͚̫͓̞͚͎̝̼̯͈͆͛̀͜ͅ ̴̴̧̨̨͎͖̤͚͎͔̘̮͔̏͛̈́͋̐̂̀͋̋͆̓́̾́̎̇͠͝ͅͅ ̴͉̲̦͇̗͌̎̀͐̾̃̆͝u̶̡̨͎̹͇̺̹̼̫͉̻̺̠̣̐̇̐̈̅̽̎̕͘̕ ̴̴̡̧̨̝͔̘̞̗̞̼̪̺̦̞̘̬̠͉͐́͐̒́̿͛̓͗̇̽̐̀̄̀̚̕̕͘͝ ̴̝̮̹͚̮͎̏͂̈́̽̊̍͐͒̄̑v̴̢̡͍̖͍̭̘̲̝̲̭̲͈͒́̈́̌̂̍̑́̈́̂͐͛̕͝ ̵̧̛̬̺̪̫̺͗̾͗̆͋̆́́̐̒͌͆͜͝+̷͖̘͖̱͎͖͚̜̻̍̓̈́̊̂̏̿͘̚͜ ̵̢̛̘͉̤̠͍̟̮̘̝͓̭̳͚̓̓̈́̔̇́̓̓̓̑͊͒̈͘y̷̛̖͚̪̦̦͍͎̯̺͉̙̓̿͛̚̚;̷̡̢̛̜̝͎̺͚̟̙̗͓̃̽̑͐̾̈́̑͒̐̂͛̚ͅ ̶̨̰͍̣̳̈́̓̾ ̵̻̟̙̖̅̈́̈́͌͋̐̿́̆͂͘͜͠ ̵̡͎͈̭͔̜͊̓̊̈́̾́̍̈́̐̒̚͜ ̸̣̥̟̜̏͝ ̸̢͍̪̘̤̱̓̈͒̈̏̋̈͋̽̈́͝ ̸̧̳̮̥̜̫̟̦̺̙̼̟̘̖̿̊̿̔͐͌̄̓̎͗̀̕̚͠ͅ ̵̡͍͎̙͈̰̲̑͜͝ͅ ̷̼̃̍̒̈́͂̕͝ ̴̨̝̖͋͛̆͗͌̿̂̒̆̀̅̄͘͠ ̸̼̗͖̺̦̭̞̖̊̆͆̾̿̈́͠ͅ ̶̡͕̰̦͎̽̀ ̵̢̲̞̟̳͋̓̎̎͒ ̴̰̭͚̞̜̺̊̇̄̂̀̾̃̕ͅŭ̴̡͙̽̉̑̃̇̍̒̔̈́̉ ̴͔̩̭̙̬̙̺̪͕͉̦̟̦̥̫̀͐=̴͖̼͕͌̾̑̈͊͘͝ ̵̨̡̣̝̱̯̺͔̬̞̙̫̟̗̽̏̓̈́͒̐̅͋̽͝͝ů̴͔̪͕̙̝̙̪̣̹̒̔̏͛̈́̑̈́̈́͛͘̚͜͠͠͝2̸̰͎̲͎̙͉̱̾͐̀ ̸̢̼͎̗͊̄̒͐̈́̉͠-̸̡̞̤̰̠͉̆̌̚͜͠ ̶̯̳͚̭͕̪̖͓̳̅̋̆̓̚͝v̶̧̛̛̥̝̝̭̦̩̮̘̓̓̉̿͝2̵̡̡̛͓̖̺͙̗̤̠̥͚͙̿̉̏͜ ̴͇͉͕͊̊̋̅͂͋̀͐͐̉̇̓̑͠+̷̢̡̧̩̜̳͎͚͓̱͖̖̭͕̗́̈͌̐̎͛̐̒́̕ ̷̢̭̹͚̪̬͍̦͍̺͐̔̅́ͅx̸̨̗̽̀̀̅͜;̴͙̥̯̺̹͇̽ͅ ̸̛̛̳̞̘̲͓̭̩̖̗̫̜̩̈́̀͊́̂̏̾̐́͂̾͜ͅ ̶̼̔̀͆́͑͛́̒̂͛̎̚͝ ̷̛̹͔̩̝̔̋̀̏̉̑͑̋̾͒̆͒͜͝ ̴̣̜̦͓̞̦̬̤͑̋̉̂̀̆̓̿̂̇̆̑ͅ ̵̧͈̜͉̯̟̑̔̇͐̌̈́͐ ̸͉͔͕̘̘̻́͌͋́̅͒̃̅̎̈́ ̴̛͓͊͗̈́̊̆͊ ̵̘̗̺͖̈́͒̈͂̏ ̶̨̰̩̗͇̩̅͠ ̴̨̗͖͖̦͖̺̩̲̪͔̫̋ ̶͉̖̫͓̻̥͓͔̰͌̂̿̚ ̵͇̙̟̼̱̭̹̟͕̒͒̿̃͂͗̂̉͠ ̸̧̛̲̭̝̠͓̋͑̌́̈̐͋͗͊̔̊̽̃̚ͅų̶̡̢̺̞̤͉̬̫̳̤̬͐̑̎̌̉̇̉̓̚͠͝ͅ2̶̨̧̳̫̬͚͉̼̠̎̇͆̈́̓̋̔͗̑̈̽̓͑̕͜͝ ̴̣̥̺͚̭̞̭̯͔̦̓̎̆͋=̴̧̢̧̥͕̻̠̟̦͇̺̪̥̯̰̉̎̿̐̂̍̚ ̸̳̫̼̲̫̙̙͎̀̏͂̎͘ͅư̸͕̝̘̘̽̎͋̇̂͒͒͐̄̈́̚ ̸̴̧̡͔͚͖̠͈͙̦̗̻͓̼̠̹̪̦̒̾̃́̽̑̂̒͑̽͗͛̿́̀ ̷̥̞̽͊̓̐̂̀̏̒͝͝ǔ̷̡̦̘͙̈́̿̾̓̓͑̉͘͝͝͝;̶̤̱̺̝̩͓̫͔̹̰̀̀̒͠ ̵̛̩͉̤̱́̎̓̿̕ ̴̡͔̼͈̝͍͍͓̑͗̿̓̕̕ͅ ̶̩̱̠̕ ̵͖̗̘͎̦̬͚̦̈͑̌̃̔̑͒̆͂̒́ͅ ̵̭̮͔̮̦̦͎͎̼̒́̾̈́̒͌́͒̐̿͑͐ͅ ̵͈͉̜̊̆̎ ̵͕̺͈̠͊̒̈̎̓̽̃̒̀͜͜ ̷̧̤͕͕̯̼͇̙̜̰͔͈̈́͂̅̑̄̔̅̓͛̈̀͂̀̈ͅ ̸̟̝̣̰́̏̏͐͂́̍͒͛̐̋͠ ̴̼͒̇̀̄̑̃͐̑́͌̈̚͘͝ ̷̞̳͇͚̯͕̈́̕ ̸̧̡̣̪̺̺̪̟̪̠͓̖̹͚̾͒̈́͘͠ͅ ̴̝̱͍͇̟̝͍̙͈͎̙͔͉̬̋̆̋̇͆̔v̶̧̡̟̭̭̫̠̯̤̞̹͊̈́͒̽̈͝͝2̷̢̢̨̝͉͎̳̫̯̱̘̰̤͈̤̍̓͆̓̐̋ ̵̧̣̞̻̦̘͕̙̳̰̪̟͂̉̾́̔̾̑̿̌̽=̴̡̤͈͍̙͓̻̻̳̫̼͎͈̆̈̄̀̎̽͠ ̷̞̪͙͎̞̰̰̀̂͌̿ṽ̴̻͓͚̹͙̟̳̭̰̥̮ ̴̸̨̧̧̨̛͇͉͉̼̗̻̲̗͙͓͕̙͉͉̣͍͕̗̙͓̽͛͐͛̀̂̿̉̿̔̑͘̕͝͝ ̸̰̟͉̫͓̗̱͛́̊́̐͂͐͜͜͠ͅv̶̢̼̦̏̔̉̒̓̋̏̔͛̀̚͝;̸̨͍̹̭̮͍͎̒̆ ̷̭͍̳̘̀̋̈́̐̊̈́̊̓̋̆̀̕͠ ̵͉̝̓͛̃̈̀̈̑́́̌͝ͅ ̷̡̛͙͇̬͈̤͆̀̿̓́̏̈́̉̀́͛̕ ̵͙̇̆̔ ̷̮̖̦̩̦́͗̔̐̓͐̋̈̚̚͜͝͠ ̶̛̰̘̝̐́̂͒̊̀̀̒̔̕͘̕͝ ̴̨̢̧̧̯̞͔͉̮̫͔͕͕͊̋̔͌̽̑̃͊͜}̴̧̡̭̱̳̙̥͔͈̤̤̤̊́̏͜;̴͕̬͚͚̳̜̲̅̀̈́̏̉̇͝