{"format":1,"manifest":{"name":"regex-cookbook","publisher":"vyloxi","version":"1.0.0","displayName":"Regex Cookbook","description":"Tested regular expressions for emails, URLs, dates, numbers, IDs, passwords, whitespace and more, in every language.","engines":{"ferrum":"^0.1.0"},"categories":["Snippets"],"icon":"icon.png","repository":"https://github.com/voukengdongmofrankysteve/ferrum-market","license":"MIT","contributes":{"snippets":[{"language":"*","path":"snippets/.json"}]}},"files":{"icon.png":{"encoding":"base64","content":"iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAYAAADDPmHLAAAuC0lEQVR42u19ebQc1Xnn77u3qve36WnfWISEAYFZAgJsg5HBYrGNlzyZxDgeHydnJjOTzMLxnPFkjp8UHycnySSTOJPFzsQ2sYkZKTYIDBhsEAhjzGKzCYEwQhLa16f3Xm+13PvNH1XdXVVd1dt7DwRRn9NH6tfdVdX1u/dbf9/3EXp8jIxskBs2jGgiYgAYHWVD/erJc2yuXqmVvlgp5yLWeqEQtEizYgBU+y4DAFPgFTf+Xn8E3w8+op/lwL8U/xVw408c920OHZ47ugMcfwZGwnU3/sQJ70eOyIIkMat9ILHfIPM5EH5pplI/6z/3xlfWryfXPy+tHdkoNm5cq3rBkbr9wujoqFi3bh3XgP+fv/mz8y2ncquCcwOYV6TNfNqQGUiSAAGGTCP+3jNa3Kp44LndtziKJZr/wE3QNW55e5hjlyK3v+5Wx2r1+13XBsBQ2oWrqqg6ZYtAr0lhPJCi9Hf/96abXvKunWndunW0fv16PWMLYMPIBrnWX2n//dOPfdjRzhcZanU+PSRMmUYm1Ye0kdOGmWFJBgFMRJK4tsuZAreNEy6HW4DDkc8wGBRALkE6MBLOyS13PMeA24w1Jy8ZTjgn2pwz8AHNmgnMLit23SrZTklYTgmOa6FcPaGJ6BED8s/++oeffKgmmbuRBh0tgFGMinVYxwTi29ZuXknQfyqIbsim+5E2C+jLzHZNIyNARMyamHX9hzAHfhC1W/UJO7ZZgUQWRcwt5DZqgwPHoMjy4zBsFICRY0UFx7wMn5MiS4Gblnz4uqlp6RCICARiMNh2q7pYPWbYThFVexKa9QOs6b/9/X2f2spgWod1tB7tpQF1outrK+q2kYfXgfSXsqm+VF9mtu7LzWUpDKHZJWbdRgVyZ6AH0G0pMpmT9xUnnZPb6Hluo6Y49nd1dd3o0T4JSTEGkQCRZK0dPVk+SqXqcVGxJ21B9Md/d+/Iuk6lAXUC/n/+zAMLDNv8VsrMrMmk+jCrb4kyZUYq7fhCmFruPu7CmGoPfGcG2PQC38munyrw3aow9qUrQQgDrqqqE8V9suoUYbvVB9mQn//GXZ860G4RJC6A0as3G+sfu8a9be2PLxWgTSkzt2Awt8Dtz8+Tml3SrOvAc6yV8xYC387A6xj4GBA6AD4J7pkBvvm6GRoCAiQkT5aPqInyQcNxKgcAffPf/fCWZ2pYdrwAaqvmtrX3X0psPphLDwzN7j/DTadyhqudtju+Yx2PgI5PEugdAp90A3sGvp11/zYBH16TUcdRQwoTtlN2j0++aZTtiTENXvMPP7zlmSRJQM1uHov160n/l5EfXSYhf5RN9w/NG1qhDGFKxW54108J+ICBON3AJ4I/E8C3Az/Zc+gd+FbXxRBkwNWOOjK+Q1bsyTFi9/qv3/eZp2vYJi6AUYyK9VjHX7rl4bmOq1/MZQbnzh06ywdfgYK2KfcOfJK47x34drs++QZ2DHysy9ibgdc58HESklvGPurOMUko7aijJ3bKsnXicEbmLvjavR87DKwjBLwDEfzitpHziAHYjvOddCo/d3b/6a4hUlKxG9713IjgcctARoyeD4EfOQZz5PZweMExYs7JDXCSdj1HxSaH44+hLyZdd8w54z8dvnIO/66mb3HwitBk5HHidTX/4MYnCKxdSDLlrL4lbtoszK2o4ncYwMjIeaFNLxtBHpbrN65Uk7++ajST6v/CUGGhm88OGYodT1DwKZdu6i5d3HXzNOz4uPcJGhqGkRYAuUpbyzed8Qv+zj2/sXlkZIPctm0j11VATTd8ceThs5ndlwby8+WcoWXkKocopCVOuXQzatlPC/DRMzMEmXx0fCdPlg8roY3z//7BtdtrmIdUgKuqX8uk+82BvkWstaKwtd9u13NbUR+WiG3EfdM5OxD1tZsYA0Jd0jC3vG60uu62oj5BxQRUZ/Od5Aj43Yj68PtxaTVmQGmXBgoLOJ0qmC6qXwsZgTX34Itrf3INQI/M6luqhgoLpNJOd2HbUy7dtLp0SFSNrZJMHOtlMRiSDExUDqmxyb2SGau/cf8tm0dGNsi6BHCc6pezZj/6crNRA78bAy9ssER2Qic7nhN2TkuXLm7Hd2HgBXZ8Z+BH9u8Ud3wi+BFJ1XS3Y3c8R7DgkKun2UU+M4y02QfXrX455AZ+aWTLuZYqvzg8sFTM6l9C4WDPKZfu7XXpOpNU7ZJjDIYUBk4U9/HYxF4tU+kLvn7P2m0CAKpu8XO5zIAsZIeV1ioG/FMu3dvn0oUlQvyOr4l7TpRWBIC1Qj49S2Uyg9KxK58DADE6sjWl2L3JMDIwjYxg6J6AR4KhxVHLfqoGXiyLKO6L3V13t8BHXVXmuKjIFIFHGPg4A68d8EEEam6hIU1orW4aGdmQMk6Io8uEEGdlUgWASDCjHuw95dK9dS4dfNoMcYSMQjG3llskiJAc9/A/IdJGAUTirP6SWmYIVbkqZRbSaSOvoVk0gX8qSzeNln2CjidAKxk5LgX2PYFI+4H4TjmSzf8jJjAzTCOr06l82lHVqwyt1SojlYZhpJmhTrl0b7FLR8TQSiCbKYFIexS3KNGVNBw7BccxQdQqB9OOTOJdu2Gk2ZApVJ3iKoOVOk9KA1JI0qxaW96nsnQ9Z+ni3hWkUalkcdbyrfjUb/wNUAc4YLoRw1EC3/nWbThyZD5M0wYzdQ1846EhIUhAghWfZ4CwyP8QcZh8N20uHVFY3FGMvqS6qRqIHbzLXTrNBDNl4drrvo9sYRywsgDpAL1dANkS9m+9BAcPLkYmU4Zm6hj4+OARQ5NnahDxIkMIucgQKRA8njd1oG859gwJ8QAG7GrzzYoz7ogAEoCQ3pMAaD2FJBOmoz6AZ8SXF0KhWOrDqssfwfwzX4Uu9oNIhxK0zAShJF588TIPeAozq7sC3v9HA5BEZMgUBIlFhmKnYfjPUJZuydkpmCkCt+DzMwOuw6iWNIonFMoTGloxUlmCkADrd0eWzt95cFwTA4PHcM3qu8HVjGfkBVnTTBCmg9LxOXj11QuQTldCgZ5ugY/7xZoVG96+487FfZcuHRFwwxcGMDAs0clDK0Z5UuPQmw5+9csKXn26DKvKSKUJrN8NWTqASMOy8rjhhjuRHz4ELvWDhIoINwKZFl57bSWKxX7kckVoLRKKXboDvhF/IDKiWTqaZpeOwXCsRgSPKP6+1WwAIQmFQYnCoMSyCzK45NoCHvjmcex/w0YqS54MO5ldujbJGhIalpXBGWe8iosuexRcyTeBX/MOoEw8//zlEEJBc7zq7Q54NAWeBGqVNV0kazoP23pvEMU8BSACTxKNy2D2RL5WwJzFJtbeNgfDCw24dkNMvhXpWebkaGj36dnGvVSK8KFrfwBh2kA4I1+rCgSlbBzZtxR7950GM2WBmRBz+c0qhpPim82pcAZDgFvku6aapWvxYA1YZe09KxpKsbcQKGwMagVk8gIf/PUBKJffuVk6BogUyuU8Lrzw5zht+VZwNQcSOj5kYNp44aVLUankIIRqDTy4PfAcJIE2frkRvYUUiT1OR5YuCjwJ4MheBxv+4mh996cyhIVnpvC+jw+gf5asqwshvWOevjKLofkmxo+6MEwKlHQ1djyFcuAJspLCCZLkVPZ0Zuk8ULQykM9PYPW1dwFaJigwAkkFp9iH7dtXwjRssKZELLoJPjVvFIbRzMTpMXTbFUXcN/YmNIThHbQ4xtj3uoVDexx85ktzYZjhaIGZIgzNNXD8oAsjBV8a1ILlgciZIJCI/Ph6oSXDq1SPxCAIIEE9A5+4XQIbSQiNUimPG2/chMEFe6CLA97ObsKMQJkqdr90CfbvX4JspgzNons9n2ATcYQHYUxvzL61GxmtSJCSPbAAQBL6hyUOvGHhwE4LS8/O1KVF7bDprACzBrNArk94riGxT1f3Hq7DcCwNIcL6kBkwTIKZEvVEC/teilYMq6LDYdYeDLykvLwgz/BbuGgXVr3/IXC5EAt+Q4ITXnr5Yk/vU8Qra1ki366amb07RY37YjRWAyMaCJpSlq6DNguaARE4hvYBrZY43PKBvKdtaZAg2FWN86/MY/Wnh+A6qIMNAkonFP7pj/bDqniLIFjhe8t/XYDZi1L1yCMzoJTG9/7sAMqTlher0FOgYSVm6RhKC1zzwfsg01Xocj5B9xPI9/1feeUCpNNV3/jjKQOfxKAQXRMyOiVecvuFQMSNpw+iNAVmLzTqMYTav67NOH7QgRRAKk14fksRRw+4yBYE0jmBTF4gkxMYXmjiog/2oVrxFosQQLWscO7lBSxenkEmJ5DNe5/PFgR+8fAE9u2oIJVCCPxuLXvmZqOSfbevUs3hnHOewzkXPQmu5CBEfNU2MwGmhe3bPd9fChes0bGB10xHaeYTRBeomBrwMWycVmSSyKJ0HQ3XYbguw64yiicUVl3fh1nzzbpu1r6k3PVKFccO2JCmt9NdR+NH/3QUyvUkR811ZAYuvW4AA8MGlKuhNCOTE3jfR4bA7IWWa+HlN7dX8Phdx5DJifrfugIe8cA3bjNDa4FUqoo1a34AVrJlQXbN93/u+VUQpHoCnmNc1eAxKHI4EbQmp514GUMGrT2kQegfNtA3bKB/2MDCZSnc/O9m4+pPDTbA154XoFzGlrvGQMLT9Voz0lnCnlerePbHE3UVUJMi+QGJS1b3wbY07IrGhVf1Y9Z8sxGTgKdO7v/WYe/Gi6kTL8P8O9Tj/ZVKDh/4wEMYXrwLbKf9eH+MOtSe73943xLs3bsUZsryEz+tGUTxwHP8sghIqoYbyEjO+0+ReNmUXPRvNgDMWWTit/9oYd0dM9MUCh8ze7pda+De/3sU+3ZYyOSFJ6bZkwypHGHL3WNYfnEOs+Y1pAYY+LVrB/Dsw+NwbcYVNw2GHAYhgEc3HsOBXVXk+mVdykyVeBnOgDIcJ4VZwwex6oqHwVYmFOuPfZg2XnjhUpQrORTyk9DBIBG3OWcbj6Q5f4KGDTBTxMtW7SfI1+WpNNXB1zqcQziwy8Ydf3IALz1RRCZPngvHjSuSEqiUFH78vaOBYItnXOb6JFZeXsC5qwron2V4oVQf/De2lvHzH40hWwiAPw3Ey5D4Jw3LTuG6a+9BdvA42DUSFwAzQfi+/6vbVyLl5/wb95pb+vKJOz6WCxnesuFAUAi16a2lixd7je8JSfD5aKiWNB664xhe+GkRUgKZHMHnqoSzWZqRzRNeebqErU8WsfKKArRuSIHL1gzW7QPyF1W15Il+ISlh53TRhyjhm+SL/rNXbMX5l/wMXM4nGn516z9dxa6XLsH+/YuRzZa9BcBT2fHxPAYOLmZmzwhsduniLPveS8GSHvVcgKSQiE5lBS5bM4DFy9L1NHA849ZbRKk04eE7j6I8qRquHwGDc0zMmuezbPznT+48giP77JDL18qy72THR7m3rAVSpoU1a+4KsSxatmlhwtatF/oRTY4E5brZ8XGGaTKHUzQ3W5yeWrrEzL//x+MHXdz5vw5hw18cwouPF+vgEwGCgPmnpXDLbfMxvNCEXdWNgFGklo6ZYZjAiSOOpwqaL88LKBHwxktlPPuTE8gVCEpxVy4d0I5Szn4gUqNSzuHCC5/C/DO3Q/u5/pa73/f9t207P+z7t3HpugE+qTpLxIHf1qVrKqlq/l/izvffqJY1XnuujF+9UMEP/uYwnrj3hGf8+YworYFsQeATvzsXRsrX/0lZOt+30ar559d3P4DZC1OYNc+EbXOAe9eZS5esKAJZGp/o0T8whtXX3usTPdrUUzMBKQuvbj8Xxcl+SOn6qd/2Ll0vwHNEpogQaDwztXRJRmA6R0jnCPkBgUc3jmH3q1WQb/l7HgBj3tIUrvrEECqlmhQIn50IcKoas+aZuP6zcwLh3HAgiTXQP2zgus/Mhevo0Oc6cenixT2H8SeGZWXxodU/RGH4MNg12y4AIgZcE88/dxmEdH0D0gvZEjSItUcFIwaTrtPDKQBl5zs+0uSjEYltF8RJAr5dbr6VOGCwZuhaipcYP77jKFynEawQgqA1cNmaASx9TwZWOagKfHcLDOUybvjcXGQLsi7uAWDiuAvt63nyF9Q5lxZw/pX9KBdd391skzFrA3zd8CMNy0rjzDNfxSWrtoArOZBoZwR7vv+hvUuxa/cZkIYL15XQroBSAq6ScLWEUhJKCWgloVzp/V0JuK5s8AQ6AR4c6NVZ5wPMcC1dKzOQG9Z8Oiuwb4eFZx+e8MAKSHcpCWtunQ0hA8dkjz9QntT4tesGcdaFeWjdCCkDwN1/fxCH99j19U0+++2635yD/ICEcsMJoF6AD3YC1Vrgw9dtgjBtsBZN7KrYh+Hi5W0XQAiFQmECuWwJuVwJ2VwJuVwx8Cwhly0iW39dRl//BEzT8WjibYCP8iAifACesfYoreyB4IWwH9376abjOOfSPAZmGfXontbAomUZrFoziMc3HUO+3wBrhm0x5ixJ4UOfnl0HuKY+XnuuhJd/PoHhBSZu+vw8QDekwMCwiQ+tnYO7v34A+X4JrXgKVGsv4lcqFXDxxU/itOXboFvE+8Pf00AliyuveAxXXr6l487NzARIF6XJfnz9G/8BlpWClCoiDTpJ8YeMwIYMmVoRZWd8gOgxtPZiAcVxhUf/5VgozV+LDH7g47Mwd3EatqUBQdCKceO/meuniRtsIqUYj/3gKHL9Ei9sGcehPZYnGbSnVlgDl6wewlnvzaNcqrmOCTse8Tu+8UrDdSXy+XFce909gBbtI36RRyZXRiZfQibX2TObLSM76zie+OlVOH5sFgzDqYNfR6NdIW6TG8iduDo98O+YQwGt2ChjXRVoZPOEF386iV3bKp4hqFDX1emswHWfmQOtgfKEi1XXD+GM83LQiiH8vD4RsPVnk9jzWhmZnEClrLDlrqOhgsva6W/47Dyk0t5CAsVX/TbTsMKJMyKNajWDD179EIYW7IXuJOTbZAwIsJJtn9AC2jGBtIUdL16IJ39+JfL5ErSmWOBbBazq6eBgZJdnoi8O/CIPqgV9Gr5+oktHjJ9874gHrKyJS2+Fr7goj5WXFzB7QQrX3jLbPz7VGcWuzXh801EYJkG5Gtm8wLanJvHm9rJ3DP86iIB5SzO4+hNzUCmrsFvYIfFSCM/wW7ToTVzxgYfB5TxI9jS3IZwaT3gyE8hwYZXz2HT3J2v1XLEM6CSDPboQRIOq3S6I0zvxslrWqJY1KiWNSlHXX8cmWxQjnSHsfb2Kpx444X2vqLzvlBSqJYUrbhzCjZ+fC9fh+nu1f3/+4HEc2mPBTIt6PkJpjc3fP4JKUaHiH6NaUqgUFS6+ehALz8x4ZBN0S7xkaC3xodX3Q6YrvuE3cw/WApQr4/HNq7F33yKk01VoRR2L+1AnQfIMV7r1/d/jRfNPw4K5p8NxnYSw5dRq6VIZClG7apa/XdUtp30wA9m8aKKsCekRPVxH18uouR5gUs3X7auHbF54nkDgGokA5TCsqq6XyHRCvBTCK+w895wXcOsX/hpczXYv+rvRElpAZKrY/+bp+Jv/83sgwSCOcP1aMYYCd8SQJo6MvYn9B9+EoTVj8oRCIaWRziNShjU9tXTVUjDQ0rDs6sZXAv+OCChPqiaPpHYsohj+nYwnbwo/cxgFs+Y9kGhXxs4heplWhJRZxQ033A1ozx+fqQXgtXXQ0K6Bu37wSTiOiUymCt2iSjj2tV9eWJpwcOKoDcdSMGqWc6WoUK24yPdLpDJ+nEl3wPnroJaOZLDkkRogtiJe1oooZe2WN6qWghavF+kNWMAJHAVm/zo4CCPid3jLkiqAhEap1Ifr19yD4cW7oUuFjty+nheAkhB9k3hq82rs2LEMhUIRSovOgQeDiODYGpMnbDiWFywhARhBnaBcjfHjnrWdKwhIM1qPF1ea1EEtHbcikrQhXkZVDsfZtu3bo0QDnl2XVNXAJ4bjmBgePoxVVz4KXc2GFmUnxl5X4DOB0haO7VuE+x+4EZlsJVAizi07uXmdwwlKAeVJB+WiA60ZhhThQFDddPBFhFVScKoKmYJEJi98Hzqqo9+aWrruBjC1llRTAT742nUlPvLR7yM37wBQLACm06EiJ8A1u14AQirce8/HUSzlkcuVfaZQCz3v725ioFJyUZpw4TgKQtRUXcOINeKKP2uh2NK4C6tCHuM265URan77Ol62LjzppksGeqJae1R2QjpTwdNPXYmnn748eb5hwG4hYihloK9vHJ/85AYYhhuYm9jG8MuXsPWZy7D15fN88FtMVvOvRgjAqmqUJl3YVVV3lZmbsTACFJFQZUBtIbg2Y9JyYWUEMgWBVJoSyqm6a4/SeUkVuu6G1Rb4LiVVNEDGmrB9+zmB2V6tjWEhNMrlHC666BcwcuWO08RkuCgeG8bd93zMj/a1ZlsJAhxbo1x0USm5ofq3cL1D46qNqGdLMbV05Bdl2JZGKu1JBDNNCdm0me14OaX2KD3V0sW/n85U/HY3AUlSc1UpLBcEeWrjPe/ZBvgx+04WgMhU8eC/jODYsWH09U1Cqfh6QgoAXy27flKM2hSG+BIgGMShQGO6KES1YJFV9XzmVJqQLXgLATUiR9KOp5AFFwaNIhEsbpeACvyPIouN487bgt8XfD+6MChihDYRMrxeBRyJQ4Tvn3d4DUbKtLB0yW7ANToT/bkydmw9H089fSny+SKUEk14MAA3Bvg6+JxAXgm0BDA6FYvBxAzgZeJsS8NIETJZQjorQjX+fg6etQJBt8kuTsOO76ZotduSqk4klZA+J4jD73n6X6LQN4nh2UeBFuzguuiXCtViAXfd/fGmucg1qVutaFRKno5vBXy7Zl5GmMPVRXsUfyE4FsOpAuWiRjpLSOcEpOEtT6dClM5pLQ1RI+tGti+DE4ZFc5NxFYngMXUAfPwxwJFh06HmjOH3mxchNQemwFSe0FIYwWJWrhuAtmNi3ryDSOWLYDvVegFoAVEo4qebbsbevQvR3zcJzdIzzF1GpeKFsx1b+Tz3DoGvG6Zhq8XgJopAa4kQpYjXOHfK1ShNeNG2VFpwKi1wxU2D+y+/YdYhM0VaaSbRadgzOszI/9tb8+CYeVqt9bUUxC/8bGzox3fuP61aUYYQYX2rlMDpp+0EmQ60lU5cAFoLiGwF+18/C488eg36+rzScMfWqJQVrIqCcrRne/g8d+4IeCRkehlG07SplsC3OBnV1QOPH9N0zUj//g9/Zu4bAEy8+x90+Yfn7O8bNJw7/nzn2ZDeNG9vRxNMw8Hpp+8ElGy97EiDtYG77v4ErKoEoYrSJMN1tMeXoEgZW9fANwfFRCftUeK7gEekhs8nUApUGCC1+tNzDgIwlatFg5X/rn3CdXX6vMuGxhackSm5NhMBTP7uL+QnMW/+Ib8TKCeHewsV/PSRVXj2qcUoT5zA2FFf1MOjv9VrRVp1ZA8Se+KqlkIsYoZR8+fjuoRzL4YSM4TBnEoLDYCkEPyvQAJA+/FZ0yTNut57FY5rYPHso8j2TYJVPFuINYEyFg7vXoA7vrMapEtQLkEI7q4rCbcxnmPsPKM5V0xdAR9dKEKCi2Pa+MUjY7Ouunn2PuXqNKTfib7W7Obd9mAglZL2wT3lwr43KgVpMnuGuecBnH76boh0FbpYiG8MAUAYGv98+w0oTuZQ6KtAKUpUvdMBfMAGiBKh2gDfvj0KCZNx/7cPLR0YNu33vn9grKkdwbvwcWhPpfD/vrbzLNfVwkgR17KdrF2ctvSN2HZwXq8kAdFfxrOPXoRnnz0b+YIHfkdtetGJe40EprD3wggXDIRDwV2FbgPJGimBakkb31y3+z2LzsoUU1mhtNZErfjFOq5XfsDSThFMkyClgDC89rH1xtMcKfKoi1YdGMDQMj6Y2MQi2MQyONwhGCliZux5o9xnlZmE1KiOa1KOhmMBQpaxcME+IKZIhJlAKRcTh4bw3X9aA9NsVAV1Any30c44arsRWwDURQ/+2PQsM4SvXPa8Vi1wyO/mhEBOmy7gvpFSI28I6SU9DMMLQNW6ikmD6qgJikQWKG6kWnMUIpo0YfZYy/DZQ8wMpRja1XBdhtLsFYGwX57mZ+Ns28SSJWPoG5oAlAyd37MbCDJr4fvf+BgOHZqF/oEilCuaUrqdWvatgQ/+WF33+YzuVlkXWTrfEDLTjZgOe7HTsPiibhNEul7/oDXDspS3I6tUrziuESCkQSHql2FSYtl08AYqpb2KJQq8rjGHVUPKMAda4Wu/AZfvn0up4LoSy87aB6NQhZ4M1wpoJSD7KnjlmXPw6OaLUOgr+eD34NIl6Pn4Qd9hDqeBuBqzqWTpmilXxNxix3MXqzi2xQUaqVVm6FofAdZwnMjN44aKocAknbC457puaYpTMofGKBNRS2YUM7Di7N1NqpwZgKFQGc/j9m/e4LdvS6767cXAi8UiElONJIOmmKXjTrN03YqvNlk6nXBOign0Uo0+FmlTzUGmTphuFrpu6mRWb400IpDPl7Fs2V7AMRD0hrUWkP0lPHj71di5cwEGB4twI8meKQHf7n5zI31pRIs/e0rPcjvguTYQK7bdNaNT8dXKmOtpajkFkwK9zUOId69cR2LOvHEMzZ4AXBkGP2fhzZdPxz2b3oe+vhJcRdH71SXwHd4vbqRhajLfCHbD6m2VtQCeoL0uJPX9RXUzkCmS+gmSNONG10Rdo1aJHDSRW+oCnpuEoW88KPbvDPUGfEM1CgE4joHTTz+AVF8ZupSGEFxn9ypX4lv/eCMs20AuVwXXXMQuXbpugW9Itkb+3AibBUE+wFR2vG882VIYWeVKCTfImmx3A3ua9NFm9ySNniEi1prJLhtpktqf3NUdbzB63UQaShNWnP1mnQACMFgJiIESNm96H17ZthT9A+WQ1T8ly76XeQjMDUZQ64hRfH+Z+JP5EQUmXHxt4akbf2vhc+kMKa2YhJjByokphG8NSfrRTQfPemjD/g/aVc54df0NEdVS7cSky10tkMlWsXz5HsDx8v9euNfB4V3zceedq5HLWV5Vz1Rduh4GXtXD/0E3sNEQiRKA74SUwQBBa8cQF6/OP/X5/3HGjwDk3wnZvI99YelT/bON8h1/vuuTBNWkojoBvtYlRDkSAwOTmDd/DHBlo++hofDdb1+PyfEc8n1ln+UzFZeuHfs5ng8QjEcYjf53vVv2oR5WDGFmlHPjby36JYC8a2vDSAmt9cmZBxBCsNaatI2BD9688PWH7txz6PBezBeGywFWSodt8T396tgSi5ccQbq/BLZMsCYv3Lv5Qjz7zArkCkHwp+bStfdIWhN7jNjyiqm4dJpAgnU2Ty4AEoZv+5zEWUEhBGtoAqANkxzESMO28xBqHxDeoMflZ+8BpRy45TRk2sH4oSHcfvuHYZhuwPmYDpeuW+A5FPoXofRApNw7uT1K4vRvgtBslUR6y6bDywEUXRekT9qnJu1qsm0tjIwovf7S+Nwje+35wtAML6WfOE0kvm+f17g6lXJw9oo9HgGECZS18P07r8GhQ0NIp20EeYPMHCvuk8rv45tYdz61PLqoDHRl2XObAgu/fEoqbP7+sasHZ6eL7//onNdPXtXvieEUwDteGl/wD1/Z/hHHgSmk5pZzkxOSNUQM5Ur095WweMkRoGrC6C9j29PvwebN70V/fwlKiWl16ToV9Rwh7qAxMCJpIhi6S9YEyNhEGlaVs3f+5Z5f/8mGgwdSabKV1oIDFPFWYyS9lEE7byS5Noji3EFKyKARM5jo0J7yIuUKIaRiDun+zqeoEgDHEZg3fwy5/iI0E6yJHL79zTWR7igz4dK1yXNyvJQxpn6yeAuZiAHSfGQfFjQbzdx7DeAUb2CSriTJIOkyM1G3wNffFxqOI7F8xR6IlAsIxgP/chXeeGM+Bgebuf3T4dIlBY9aAx/gAzQPfKApAR+lOZLhcnBXJsT2QkEcShq5mmCYUqi+JDxuhoJtZQPnpGi1MRPV9H53wAcy7UwQUmP58r1A1sau587CpruvQF/E5Zs+l65lmLsDPkGQEdQytt1tli5owRI1vkzNeanQjo+LQTQnb8L2CUV8GIosHErIhUWqedrq29ZRRyKGqwh9fWUsW3YAXE7jW/+4BrZteEEfTTPu0nFH5W3RwhA0cwKnJUvX0xCD7oNP0+MaTQfxkuE6BubOGcPQkiPYvOkKbNu2FAMDccme6bvuboHnoBuIECWss9h398Azt/4hXej4dj2KWvTJb28ht7GwOcoQiNZOMizLwHkrd2H8yAC+c8dq5PIVKI2OLfuegI8txO38fhkc8R0ppJnb6/mWO4dYg0kECRscW3ETrXCJ8hIpYjzGlHxxVPtHI2nUFLNrXukU+UWBkW2kdaMOICZL5/vlK1fuwve+fR0mJrIY6C/X2b0z59J1C3ykYVS0px9PB/C1d1VaCMOyScAJ91BpZ2h1wYpplZ5tEbMPfTlIWYtpg6cZpGwzC3IBUoG0coNraDsG5i04jn37hvHEE+egr1AD/61x6Trd8cyIqICmidM93MC4OBMT3nNp9r5P/PaKR1J54Xqk4N6aKPb8UABki/c6DReZ4Afu2H3hEw8cXOtYMu8tgoaYYfby/LYjcf99l4ESGkvMhEvXHXk3KgW4pgKaRQN6NpRYQ6XF2Zek7v+9Pzn7WwAGOx4lehKHDD/3xXPuH5yVnrj7m7v+U9gp5Xp3DqucAgOQhtvcyGnGXTr0wFxChA/Qtj1KOwuZmZmENN3qx35n2cMABhxHGUK8o8H3uQNy+OYvnPnc5nve3DV+xDwDwtHst9pttNRhf2oZdQb8tFn2nQMf7SlsNP1xyi4dgUjpvoGU7SXawFLKd/wCcBwlTFNqYQqLa/qDWzCX3kJfvve0Mjc4gYn+aXe+PIGUdm0z98Adey++9baz7nMszNamYiHeuYvAsRyRyZnjLz5x5MwTh5wzQYqbKW5vv0vXGfAtAkFhcmUvc+l8ThApPP3Q8ZFZ8/aduPHWRc+/w/U/yZypX3jy2Bn/+Mev/I52kYL00sVvv0vXFos2hSEAfeKSv+X+7GL0ZxdDs9M6/NlxskYD7BXv9Q+LndKkKnvjaWLjipQUdaTWVOhkkeldQ5DvHQ43t7C1dWOUlm7UHdDxw9ZyKCkgnGA90Nvq0rUMeiUGnxiCJIrVQyhah+KTQVPP0hGYvDks40eNM8DUNvbdLfFyJsumY5nIgsHC4VCro5PCpeuSyhdq2h3kA/C0p2f9tlauDg01iAOBOCb4xpEGWYxwQC8axOFIGiPmN1FcvUowmMjhlnMUus0i2gPuZHLpuuVwctzs4KkDH5usEV0lPTqiYLU4Zwd9cRKNs5MgSzeTwNegDwaqDO6i6cA7M0v3dhAv3w6Xrl3X1BhJw6FAECe3fW3XMm6KtXTd8O+mB/gua+lOWpcuIV/LnfcKNHz6KCWC0AWBsddauqkYSm9FLd3J69J1d93NzCpmw2tllCS+pgN4dN/+fcbao7z1xMuZdem6Az6aEiYIMpj1PqXtRQzlUTl7voHT69LNWHuUt4h4+da4dN0C78Guwexqh7RW+wwG7wN4Edf4IG3ZON0bSjMJ/MzX0p38Ll2nkqr+ee2pfSLeJwTTy5oVuDbGO6GdWGJFUAcVKq161PTa8TK5siZ5gmaT2GxXWYP4yhrm5mnr8deNxImjsecMuaOdVWd1Neibvb4MzIqZFZjoZQGSTyltw9U2RWmDUwWeW8Sgg1caO6u3R+C53QTNKZRUJQHPzfPbk697ysDHQM9xHV7ir5sAKLZJsQNAPmVQytji2GXL0eW0YWT9g9Epl+6d4NK1sLkSYxBEcHVVuG7FImFsEebkwA4F9brtlv0ebC2LPxNWMRKKKDnc2ZoZyZHHdju+Pbmh1fBq9LLjYyOPkSpqThifWz99Z5Kq6eyR625q589xo2wDXlaCpGKGdlUFTOr1eabaITZuW2sLFvcpZcN1q7o5GcRoyRvkaACpPfBNLek42bJvGi7dKfDo7AYiYahKy+vuEHhutes7XLBdAR8bzAsfQWtLK+0AJO/buG297dcrydur7glVccdlY+RFHPCtTtYt8MmG0rQAz3E3MNlQ4i7b4icDnxTISdbzUwc+bhJrdMq7BkHAcielpSaVaaZvBwAxgg3ynud/d5tm9bijSsTaVc2iPgZ4nirwyeJ+6sAnRA1bGErdSCpOSDJNycDrCHgkAN9CxdQXLEGxqxxdJmb38Ue2/cG2EYxIgZHa0OXMH9puEWV7DEQyZkjLKZfu5HPpWnkkwc8ziAQsdxyuqkBw+g+9D41AbNy4Vo1iVNzzi3+72XHthyrOmFTKUo3W7qdcupPVpUsEnqPnJChtK9uZkK6yH9qyY3TzKEbFRqz1a5ZH13mWABu/bztFZ9I+TETE9cbMHbVHmQ7gZ749CoMTmyV0YuC1XLCJwCMB+BhxH//NLhZs9L4wCIIr9jGyVdkxVer3Ee2Rsn496ZGRDfKel/79dib9VdspinL1uBJk+KrglEt3Mrp0ra/b79QNiaozphxVFgz91c27vrx9ZGSDXI/1OjoGASPYIDdiRN90wV8/mDLz1w1mFruGkTE0q8a0yVNZuhnM0nXTd6Fd8MnT+0pZ7qR1wHBV+ceP7/jKmhGsFRuxUcXOcNmIlxkgCJ39rOOWDk9YBwylXUUQ/mzYUy7dyeHSxZwzdN0aBILSrirZhw1XVw6bOvtZgLAR53Jzm6z6Y70eHR2le7f+ziEGPmo7E2Pj5d1Sa1cRSTD0KZfuJHDpkmwu755oEEkoVqpo7Ze2Ko1BqY8+svMPDo1ilOCLfsSMx2yogpENcuPGteojF/7lpWDxYMroG+rLzHdNmTW0dtG6R9fb0/Hy5CJeYkpp5e7qMcM2EZEBpapu0T5sOKo0RorXbNn5lWc89b62qSY6sX3r1VePGo89tt69/sK/vNRgucmUmQVZc9jNpoYksyavbIJOES97nLXUG/BJNpE/BYUEW84JVXFOGI6yDiitb35y51eeuRqjxmNY78bhnDjLdPfuxzzP4JEv7D1j8XX/DKVWutpa4agqmTKnpDAEQwd6+5/K0k0pS9fpgg3ZJewTuyQUO6psHRaWOylcZT9IrnPjE7u/un0EG+T9+I+J3RDaNnAOio6bzv+rdUz8pZTMpdLmoM4aQyyEEJ5E4AT6+L9O4mWnXMhugA/Xb3o7XrOrLWeCLHdCOKpsM8QfP7Fj/ToPuxEZtPi7kgC1xzZsZGBUAI/iV4cvf3TFvOvvVuyc4bilFa4uC6VtEmS6Qpggbz44hX/I1CeRNbs+yRZwIjBdtbqLN+BizznV5pZICgfXjEqqx/LJB51ArLWjqu6YrDgnRNUdJ6WdBySLkcffWL/B/5LYhr9tO3S9qxbuNeMQAD7y3r/6sNL6i8x6ddrsE5JMmDIHQ2S1IVIMEt71BgspuZuBVO2IJF2UsHGPJNUp2ybJtgPHtLQNtcCqeUCsvVweK9bskKurwlUVKHZguUUtQI+AxJ89/vr6h6ISu5NH1z38RzEq1mEdk3/5N1/y9fMdq3yrZnUDg1eYMpuWIlWTBpDCRHeE0alw+NsYbAnfi69C6rRBdpdj9bq07DV7s+80K2jtwFFVCyReE6AHyDC+u2X7l19CvWpyXZObN+0LICwNRnRtHV999WZj8Phr5zhsXcmkLlbKuQjECwlikYYKzFoNtF6LaQzbEUDcSom0Aa6tgTed3kpiQXsHtgszkSRm3kfAfiL5HEj8klTmZ7Rk1SuPPXaNWwM+Gt3r5vH/AYRF+slLQ0kaAAAAAElFTkSuQmCC"},"snippets/.json":{"encoding":"utf8","content":"{\n  \"Email\": {\n    \"prefix\": \"rx-email\",\n    \"body\": [\n      \"^[\\\\\\\\w.+-]+@[\\\\\\\\w-]+(?:\\\\\\\\.[\\\\\\\\w-]+)+$\"\n    ],\n    \"description\": \"An email address\"\n  },\n  \"URL\": {\n    \"prefix\": \"rx-url\",\n    \"body\": [\n      \"https?://[\\\\\\\\w.-]+(?::\\\\\\\\d+)?(?:/[^\\\\\\\\s]*)?\"\n    ],\n    \"description\": \"An http or https URL\"\n  },\n  \"Domain\": {\n    \"prefix\": \"rx-domain\",\n    \"body\": [\n      \"^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\\\\\\\\.)+[a-z]{2,}$\"\n    ],\n    \"description\": \"A domain name\"\n  },\n  \"IPv4\": {\n    \"prefix\": \"rx-ipv4\",\n    \"body\": [\n      \"\\\\\\\\b(?:(?:25[0-5]|2[0-4]\\\\\\\\d|1?\\\\\\\\d?\\\\\\\\d)\\\\\\\\.){3}(?:25[0-5]|2[0-4]\\\\\\\\d|1?\\\\\\\\d?\\\\\\\\d)\\\\\\\\b\"\n    ],\n    \"description\": \"An IPv4 address\"\n  },\n  \"Date ISO\": {\n    \"prefix\": \"rx-date\",\n    \"body\": [\n      \"\\\\\\\\d{4}-(?:0[1-9]|1[0-2])-(?:0[1-9]|[12]\\\\\\\\d|3[01])\"\n    ],\n    \"description\": \"A date, YYYY-MM-DD\"\n  },\n  \"Time 24h\": {\n    \"prefix\": \"rx-time\",\n    \"body\": [\n      \"(?:[01]\\\\\\\\d|2[0-3]):[0-5]\\\\\\\\d(?::[0-5]\\\\\\\\d)?\"\n    ],\n    \"description\": \"A 24 hour time\"\n  },\n  \"Integer\": {\n    \"prefix\": \"rx-int\",\n    \"body\": [\n      \"[-+]?\\\\\\\\d+\"\n    ],\n    \"description\": \"An integer\"\n  },\n  \"Decimal\": {\n    \"prefix\": \"rx-decimal\",\n    \"body\": [\n      \"[-+]?\\\\\\\\d*\\\\\\\\.?\\\\\\\\d+(?:[eE][-+]?\\\\\\\\d+)?\"\n    ],\n    \"description\": \"A decimal number\"\n  },\n  \"Hex color\": {\n    \"prefix\": \"rx-hex\",\n    \"body\": [\n      \"#(?:[0-9a-fA-F]{3}){1,2}\\\\\\\\b\"\n    ],\n    \"description\": \"A hex color\"\n  },\n  \"UUID\": {\n    \"prefix\": \"rx-uuid\",\n    \"body\": [\n      \"[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}\"\n    ],\n    \"description\": \"A UUID\"\n  },\n  \"Slug\": {\n    \"prefix\": \"rx-slug\",\n    \"body\": [\n      \"^[a-z0-9]+(?:-[a-z0-9]+)*$\"\n    ],\n    \"description\": \"A URL slug\"\n  },\n  \"Username\": {\n    \"prefix\": \"rx-user\",\n    \"body\": [\n      \"^[a-zA-Z0-9_]{3,16}$\"\n    ],\n    \"description\": \"A username\"\n  },\n  \"Strong password\": {\n    \"prefix\": \"rx-pass\",\n    \"body\": [\n      \"^(?=.*[a-z])(?=.*[A-Z])(?=.*\\\\\\\\d).{8,}$\"\n    ],\n    \"description\": \"A password with 8+ chars, upper, lower, digit\"\n  },\n  \"Phone (international)\": {\n    \"prefix\": \"rx-phone\",\n    \"body\": [\n      \"^\\\\\\\\+?[1-9]\\\\\\\\d{6,14}$\"\n    ],\n    \"description\": \"An international phone number\"\n  },\n  \"Semver\": {\n    \"prefix\": \"rx-semver\",\n    \"body\": [\n      \"\\\\\\\\bv?(\\\\\\\\d+)\\\\\\\\.(\\\\\\\\d+)\\\\\\\\.(\\\\\\\\d+)(?:-([\\\\\\\\w.-]+))?(?:\\\\\\\\+([\\\\\\\\w.-]+))?\\\\\\\\b\"\n    ],\n    \"description\": \"A semantic version\"\n  },\n  \"Whitespace trim\": {\n    \"prefix\": \"rx-trim\",\n    \"body\": [\n      \"^\\\\\\\\s+|\\\\\\\\s+$\"\n    ],\n    \"description\": \"Leading or trailing whitespace\"\n  },\n  \"Blank lines\": {\n    \"prefix\": \"rx-blank\",\n    \"body\": [\n      \"^\\\\\\\\s*$\\\\\\\\n\"\n    ],\n    \"description\": \"Empty lines\"\n  },\n  \"Multiple spaces\": {\n    \"prefix\": \"rx-spaces\",\n    \"body\": [\n      \" {2,}\"\n    ],\n    \"description\": \"Two or more spaces\"\n  },\n  \"HTML tag\": {\n    \"prefix\": \"rx-tag\",\n    \"body\": [\n      \"</?([a-zA-Z][\\\\\\\\w-]*)(?:\\\\\\\\s[^>]*)?>\"\n    ],\n    \"description\": \"An HTML tag\"\n  },\n  \"Hashtag\": {\n    \"prefix\": \"rx-hashtag\",\n    \"body\": [\n      \"#[\\\\\\\\p{L}\\\\\\\\p{N}_]+\"\n    ],\n    \"description\": \"A hashtag\"\n  },\n  \"Word\": {\n    \"prefix\": \"rx-word\",\n    \"body\": [\n      \"[\\\\\\\\p{L}]+(?:'[\\\\\\\\p{L}]+)*\"\n    ],\n    \"description\": \"A word with letters and apostrophes\"\n  },\n  \"Credit card shape\": {\n    \"prefix\": \"rx-card\",\n    \"body\": [\n      \"\\\\\\\\b(?:\\\\\\\\d[ -]?){13,19}\\\\\\\\b\"\n    ],\n    \"description\": \"A 13 to 19 digit card number\"\n  },\n  \"Postal code US\": {\n    \"prefix\": \"rx-zipus\",\n    \"body\": [\n      \"^\\\\\\\\d{5}(?:-\\\\\\\\d{4})?$\"\n    ],\n    \"description\": \"A US ZIP code\"\n  },\n  \"Postal code CA\": {\n    \"prefix\": \"rx-zipca\",\n    \"body\": [\n      \"^[ABCEGHJ-NPRSTVXY]\\\\\\\\d[ABCEGHJ-NPRSTV-Z] ?\\\\\\\\d[ABCEGHJ-NPRSTV-Z]\\\\\\\\d$\"\n    ],\n    \"description\": \"A Canadian postal code\"\n  },\n  \"Quoted string\": {\n    \"prefix\": \"rx-quoted\",\n    \"body\": [\n      \"\\\"(?:[^\\\"\\\\\\\\\\\\\\\\]|\\\\\\\\\\\\\\\\.)*\\\"\"\n    ],\n    \"description\": \"A double quoted string\"\n  },\n  \"Line comment\": {\n    \"prefix\": \"rx-comment\",\n    \"body\": [\n      \"//.*$\"\n    ],\n    \"description\": \"A // comment\"\n  },\n  \"Camel to words\": {\n    \"prefix\": \"rx-camel\",\n    \"body\": [\n      \"(?<=[a-z0-9])(?=[A-Z])\"\n    ],\n    \"description\": \"The boundary inside camelCase\"\n  },\n  \"Duplicate words\": {\n    \"prefix\": \"rx-dupword\",\n    \"body\": [\n      \"\\\\\\\\b(\\\\\\\\w+)\\\\\\\\s+\\\\\\\\1\\\\\\\\b\"\n    ],\n    \"description\": \"A repeated word\"\n  }\n}\n"},"README.md":{"encoding":"utf8","content":"# Regex Cookbook\n\nTested regular expressions for emails, URLs, dates, numbers, IDs, passwords, whitespace and more, in every language.\n\nType a prefix and press Tab. 28 snippets.\n\n| Language | Prefix | What it inserts |\n| --- | --- | --- |\n| * | `rx-email` | An email address |\n| * | `rx-url` | An http or https URL |\n| * | `rx-domain` | A domain name |\n| * | `rx-ipv4` | An IPv4 address |\n| * | `rx-date` | A date, YYYY-MM-DD |\n| * | `rx-time` | A 24 hour time |\n| * | `rx-int` | An integer |\n| * | `rx-decimal` | A decimal number |\n| * | `rx-hex` | A hex color |\n| * | `rx-uuid` | A UUID |\n| * | `rx-slug` | A URL slug |\n| * | `rx-user` | A username |\n| * | `rx-pass` | A password with 8+ chars, upper, lower, digit |\n| * | `rx-phone` | An international phone number |\n| * | `rx-semver` | A semantic version |\n| * | `rx-trim` | Leading or trailing whitespace |\n| * | `rx-blank` | Empty lines |\n| * | `rx-spaces` | Two or more spaces |\n| * | `rx-tag` | An HTML tag |\n| * | `rx-hashtag` | A hashtag |\n| * | `rx-word` | A word with letters and apostrophes |\n| * | `rx-card` | A 13 to 19 digit card number |\n| * | `rx-zipus` | A US ZIP code |\n| * | `rx-zipca` | A Canadian postal code |\n| * | `rx-quoted` | A double quoted string |\n| * | `rx-comment` | A // comment |\n| * | `rx-camel` | The boundary inside camelCase |\n| * | `rx-dupword` | A repeated word |\n\nThis extension runs no code and asks for no permissions.\n"}}}